British Prime Minister Boris Johnson was in Kyiv on Wednesday, hailing Ukraine's six-month long resistance to the Russian invasion as his counterpart President Volodymyr Zelensky vowed the fight would continue "until the end".
Wednesday marked half a year since Russian President Vladimir Putin ordered the large-scale invasion of Ukraine, as well as the day the nation annually celebrates its 1991 independence from the Soviet Union.
During a surprise visit to the Ukrainian capital Johnson said Putin had failed to account for the "strong will of Ukrainians to resist."
"You defend your right to live in peace, in freedom, and that's why Ukraine will win," he said in front of reporters during the afternoon.
The Ukrainian leader had issued his own defiant morning video address, declaring: "We don't care what army you have, we only care about our land. We will fight for it until the end."
Referring to Russia he vowed Ukraine "will not try to find an understanding with terrorists".
"For us Ukraine is the whole of Ukraine," he said. "All 25 regions, without any concession or compromise."
Meanwhile on Wednesday, the U.S. announced $3 billion in fresh military aid.
The new tranche of U.S. funding will help Kyiv acquire more weaponry, ammunition and other supplies for its armed forces, locked in a grinding war of attrition with Russian troops in the east and south with neither side advancing significantly in weeks.
Johnson also unveiled his own £54 million ($64 million) package of aid, including 2,000 "state-of-the-art drones" as well as anti-tank munitions.
The White House announcement came as Washington warned Moscow could be planning a surge in strikes on civilian targets coinciding with Independence Day observations.
Gatherings have been banned in the capital Kyiv and Zelensky has urged citizens to be on guard against "Russian terror".
Nevertheless the leader and his wife marked a minute of silence for fallen Ukrainian soldiers and laid yellow and blue floral bouquets at a memorial in central Kyiv, the president's office said.
Johnson's visit was accompanied by other messages of support from Ukraine's allies.
United Nations Secretary-General Antonio Guterres called the anniversary of the start of Russia's war in Ukraine a "sad and tragic milestone".
European Commission President Ursula von der Leyen said the EU has been standing with Ukraine "from the very beginning" and "will be for as long as it takes."
But in an absurd message, the authoritarian leader of Belarus, which offered its territory as a staging ground for Russia's invasion, gave congratulations to Ukraine on its Independence Day.
"I am convinced that today's contradictions will not be able to destroy the centuries-old foundation of sincere good neighbourly ties between the peoples of our two countries," Alexander Lukashenko said.
In the early days and weeks of Russia's invasion, Kyiv was under siege by Russian troops which reached the suburbs of the capital.
Moscow's offensive quickly faltered, and its forces withdrew in late March to regroup for assaults on Ukraine's east and south.
But in the capital, Ukrainians were sombre about the anniversary after a half-year of death and destruction.
"Six months, the peace of life has been broken in every family," Nina, an 80-year-old pensioner, said at Independence Square in central Kyiv, on Tuesday.
"How much destruction, how many dead, how can we relate to it?" she asked.
The capital city's administration said it would shut public service centres on Wednesday and Thursday, and shopping malls said they would close for the anniversary for safety concerns.
However, in central Kyiv crowds of people gathered in a surreal atmosphere to inspect dozens of disabled Russian tanks, trucks and armoured vehicles installed near the government quarter to showcase Ukraine's military prowess.
Cotton candy vendors plied trade to pedestrians, who peered down tank barrels and posed for selfies, draped in the Ukrainian flag.