DNIPRO, Ukraine -- Around 1:30 a.m. on December 6, an explosion woke me at my mother's apartment on a central street in my hometown, where I'd fallen asleep to the wail of an air-raid siren. The blast sounded close, and it was followed by waves of barrages.
When I went to my mother's room to ask whether we should take shelter in the basement of the nine-story, Soviet-built apartment block, she shrugged off the idea. "Those are just Shahed [drones]. This is how they shoot them down," she said.
"We can go to our apartment hallway...if you want. It has a load-bearing wall," added my mother, Tetyana, who is 50. She suggested I check the local Telegram channels that monitor Russian attacks to see where the drones were headed.
The air raid lasted through the night and, by morning, a missile had struck a neighboring part of the city. For the next two days, thick pillars of smoke hung over the area as helicopters were deployed to extinguish fires ignited by the attack.
Warehouses storing gauze, bandages, and tires were hit, while debris from another missile was found scattered on a children's playground in a park a 10-minute walk from our home.
'No Shelter Would Save You'
A major industrial center and a key hub for volunteers aiding defense efforts, Ukraine's fourth-largest city lies about 100-120 kilometers from the front lines further to the east and south. It has long been one of the most frequent targets of Russian air strikes.
With Russia's full-scale invasion of Ukraine in its fourth year, Dnipro residents have grown accustomed to the constant threat of death and become adept at gauging the danger, I observed during a three-week visit to the city as winter set in.
I hadn't been in Dnipro since the summer of 2022 -- a few months after the February 24 invasion -- and there were some noticeable differences, such as the above-ground concrete shelters that now stand on many streets.
But it's rare for people to actually enter the structures, Danyyl, 21, who studied tourism at the local university, told me a day after the overnight attack.
"You can't really protect yourself from missiles. No shelter would save you from a direct hit," he told me as we sat at a cafe full of people on the left bank of the river that gives Dnipro its name.
The capital of a province that borders the Donetsk, Zaporizhzhya, and Kharkiv regions, all partially occupied by Russian forces, Dnipro is under daily threat from missiles and drones, even if their final destination is deeper inside Ukraine, Danyyl explained.
"If they launch something from the south or east, it's almost inevitable that we will have an air-raid siren. It's just impossible to react to it every time."
In some cases, there's no time to react.
On December 1, a missile struck the city at around 10 a.m., just minutes after the alert was announced. Four people were killed and 45 others injured.
At the moment of impact, I was in a line of cars waiting at a red light. Nobody panicked, even though the immediate danger was not over.
"It really is Russian roulette," I thought, reading on Telegram that a second strike could come at any moment.
When I walked into the building where my mother works shortly afterward, people were standing outside their offices showing each other images of the aftermath that were appearing on social media.
Trying to piece together what had happened before the official statements, people were calling their families. A single question echoed through the corridors: "Are you OK?"
Once the channels that monitor Russian attacks began to report that the danger level had slightly decreased, knots of people separated as everyone went back to work: Life returned to normal, or what passes as normal in Dnipro these days.
Darkness At Noon
Dnipro is not a frontline city, but every year of the full-scale war has brought Russian troops closer, and life looked different this December than it had in 2022. It sounded different, too.
Soldiers coming from and going to the front; billboards promoting service in Ukraine's best-known military brigades; damaged buildings, boarded up with plywood -- all this signaled the presence of war.
Nevertheless, homes restored after strikes stood alongside newly built modern high-rise residential complexes, as well as parks and restaurants, which continue to appear across the city.
Despite the frequent attacks, many residents were still going out in the evening until the final hours before curfew, which begins at midnight.
Often, however, the lights over popular places were off, and city streets were filled with the buzz of generators installed outside most cafes and shops. Passing them, you can hardly hear the person next to you.
Amid stepped-up Russian attacks on Ukraine's energy infrastructure, Dnipro now follows a schedule of rolling outages to save electricity -- and occasionally experiences complete blackouts.
Thousands of apartments are left cold and dark for more than 12 hours daily, with the schedule regularly adjusted on the fly.
Unable to cook, take a shower with water that's anything but ice-cold, or perform other daily tasks, some residents turn to energy inverters, the cost of which usually starts at around $1,000 -- a price not everyone can afford.
"It saves part of the energy while we have it and reproduces it when we don't," Volodymyr, 23, a factory worker, told me while I was visiting his apartment.
"My family gave me an inverter for the New Year a couple of years ago," he said. "It was a great gift, considering our reality. Even though it is one of the more expensive models, it can't handle all the needs, but at least we have light because of it."
And the noise? "It's bearable," Volodymyr said. "It sounds like someone is drying their hair in the other room."
'Their Souls Are Still Out There'
Since the start of Russia's military aggression over a decade ago in the nearby Donbas -- the Donetsk and Luhansk regions -- Dnipro has rallied to support Ukraine's outmanned and outgunned forces in an effort to resist further incursions.
Now, as the full-scale invasion rages on, Ukraine's military has grown in numbers, weaponry, and experience, but the role of the city -- still mostly Russian-speaking -- has not changed.
Dnipro hosts thousands of refugees from further east and south, and hundreds of wounded soldiers at any given time. Local volunteer organizations work nonstop to support those displaced by the war and keep frontline brigades supplied.
Serhiy Kramarenko, a 43-year-old volunteer, told me that visits to the front and round-the-clock phone calls from soldiers, relatives, and other civilians, which "are scary to answer," have become a constant part of his life.
"This has become a cross that we bear every day," Kramarenko wrote in a message on Telegram. "We meet mothers who live from one phone call to the next. Soldiers who look right through you, because their souls are still out there, on the front lines."
While medicine, clothes, and food are needed daily, hundreds of people who have fled war-torn regions for Dnipro need something else even more, Serhiy said: human closeness.
"The work has become quieter, tougher, and deeper. Because behind every request there is real human pain," he said. "People here live between a destroyed past and a fearful future."
Beyond Dnipro, closer to the front lines, people ask for only one thing -- "to survive," he added. "There is no talk of comfort there…. People just ask not to be forgotten, because forgetting kills faster than cold and hunger."
'Exhaustion Does Not Mean Indifference'
Nearly four years into the full-scale war, fatigue has made it increasingly difficult to mobilize financial donations. High-level corruption scandals have not helped, either.
"No one expected it would drag on for so long," a 45-year-old Dnipro entrepreneur who raises money for the Ukrainian military told me. But he said that hasn't put a stop to the donations he musters for military vehicles, drones, and electronic warfare systems.
"People are tired -- this much is obvious," said the entrepreneur, who is also named Serhiy and did not want his last name published. "At the same time, exhaustion does not mean indifference."
Despite the daily reminders of war, at times the city reminded me of peacetime Ukraine. And memories of that era still surrounded me.
Road signs showed the distance to Donetsk and Sevastopol, on the Crimean Peninsula -- Ukrainian cities long since occupied by Russia.
Dozens of magnets from all across Crimea, our family's favorite place when I was a child, hung on the refrigerator in my grandparents' apartment. Many other souvenirs bought there before the Russian occupation were spread around the room where I once lived.
But in contrast even to 2022, residents were no longer vocal about restoring Ukraine's 1991 borders, although they remained consistent in opposing the Kremlin's demands for more land and for other concessions that would compromise its sovereignty or worse.
"People here no longer talk about an unconditional victory," Serhiy said. "We're just trying to help our defenders preserve our country."