In the last month of war, Lviv has become a city of sanctuary for Ukrainians fleeing fighting.
That sense of safety was shattered in a matter of minutes.
We were driving through the city when news broke that jets were flying overhead.
Biden warns Putin not to move on ‘single inch’ of NATO territory – live updates
Moments later the air raid siren could be heard in the streets. It’s now a familiar sound here – but this time it felt different.
Very soon after, three loud explosions were heard.
Then a large cloud of black smoke began to grow over the city’s skyline.
Ukraine war: Biden says Putin ‘cannot remain in power’ as Zelenskyy pushes Europe to hand over weapons ‘covered with dust’
Ukraine war: Battlefield in north ‘largely static’ says Ministry of Defence as local counterattacks hamper Russian forces
Ukraine war: Biden says Putin ‘cannot remain in power’ as Zelenskyy pushes Europe to hand over weapons ‘covered with dust’
Read more: Explosions in Lviv after ‘rockets fired from Crimea’
As we arrived at the scene, fire engines were rushing towards the flames while police were pushing people back. The biggest threat was a possible secondary attack.
The other great concern was the fuel depot that was now on fire was fast getting out of control.
The atmosphere was tense and many seemed panicked – even members of the military. We witnessed several arrests. One man was being pushed around by police officers.
It wasn’t clear what he’d done but they took his mobile phone and began looking at it. Suspicion was rife that anyone near the scene taking pictures could be helping the Russians.
The missiles fell just short of the city’s television tower – it’s not clear if this may have been the intended target.
Subscribe to the Backstage podcast on Apple Podcasts, Google Podcasts, Spotify, Spreaker
But there was panic and paranoia – that information from this attack would help the Russians strike again.
And a second assault on the city did come. As we were preparing to go on air – behind us came the sound of more explosions.
Three bright flashes lit up the sky. Then a cloud of smoke grew. We knew it was another hit – this time on the outskirts of the city. We later learned rockets landed on an industrial storage facility.
But the first missiles to hit were a first attack on the populated, civilian area of Lviv. A city that has offered a safe haven to tens of thousands of Ukrainians fleeing untold horrors in other parts of the country.
Five people were injured in these strikes but it certainly could have been far worse. The scene of the first strike was surrounded by residential buildings and apartment blocks.
Read more: Responding to punishing sanctions, Putin attempts to swing his own financial sword
It was perhaps no coincidence this attack came just moments before the US President addressed the international community in Warsaw.
As Joe Biden slammed Russia and Vladimir Putin, Russian forces attacked a city just 40 miles from the Polish border.
Perhaps a message to the West – but a signal too that nowhere in Ukraine is safe from Russian aggression.