Protesters demanding another Brexit referendum reacted with jubilation as MPs voted to force a further delay.
Supporters of the “People’s Vote” converged on Westminster after marching en masse through central London calling for a “final say” on a new deal.
As MPs delivered a blow to the PM’s strategy, there were loud cheers among demonstrators in Parliament Square.
Organisers said up to a million people attended the march, while police said it was “very busy”.
Videos posted to social media showed the moment the vote for the amendment proposed by former Tory MP Oliver Letwin was announced.
MPs backed the measure, which withholds approval of Mr Johnson’s deal and forces him to seek a delay, by 322 votes to 306.
Meanwhile, cabinet ministers Michael Gove and Jacob Rees-Mogg were heckled by protesters as they left Westminster and they both required police escorts.
Business Secretary Andrea Leadsom tweeted that she had faced “frightening” abuse outside Parliament and was “grateful” to the police.
Protesters travelled from across the UK to attend the march, which started on Park Lane ended in Parliament Square.
Ali Lothian, 60, and Mettje Hunneman, 49, travelled from Dundee and Edinburgh respectively overnight to join the protest.
Ali told the BBC she felt it was the last chance to show how strongly she felt about having another vote.
She said: “It’s a big commitment – it’s a whole weekend. But I regretted not coming last time. This time it was a no-brainer.”
Mettje said the fact Parliament is sitting as well made it “a momentous day”. “I would not feel comfortable sitting at home – I’ve got pals who have got a gig tonight but I just couldn’t be there.”
Millie Bishop-Morris, 17, made the journey from Plymouth with her mum and boyfriend.
“I think it’s important that young people should be angry about this as well,” she said.
She added: “I just think Brexit has gone completely the wrong way. I want to be optimistic but I’m preparing myself for the worst.”
One group of protesters were seen pulling a float depicting top aide Dominic Cummings using Mr Johnson as a puppet.
With “Demonic Cummings” splashed across its forehead, the figure on the float appears to be wearing a Nazi uniform, including an armband which reads Get Brexit Done, and has a Union Jack moustache.
At the scene
By Katie Wright, BBC News
Real Life. Real News. Real Voices
Help us tell more of the stories that matterBecome a founding member
It was deja vu for many people as they descended on the streets of central London once again to demand a final say on Brexit.
Six months on from the last big rally, there was bright sunshine and blue skies to greet the protesters – which included many returning faces, as well as those marching for the first time.
In March a carnival vibe accompanied the slow walk from Park Lane to Parliament Square, but university student Ben Stocks said the atmosphere this time was “more sombre”.
Another member of the crowd, Simon Gosden, 63, agreed, saying: “There’s more of an air of tension. We know we’re getting down to the nitty gritty – it’s all or nothing.”
Shadow chancellor John McDonnell and Liberal Democrat leader Jo Swinson were among the politicians to address the rally at Parliament Square, alongside celebrities including Star Trek actor Sir Patrick Stewart and TV presenter Sandi Toksvig.
Sir Patrick told the crowd they had proven another referendum was not a “pipe dream”.
He said: “You haven’t just filled a nice bar in north London, you have taken over an entire city. You haven’t just impacted the Brexit debate, you have transformed British politics.”
Well-known faces also joined in the walk to Parliament Square, including TV chef Rick Stein, who shared a picture from the march.
As of Saturday morning, more than £500,000 had been donated to support the protest, with cross-party politicians calling on people to get involved.
‘Honour democratic values’
People’s Vote organisers are also asking people to sign a letter to Boris Johnson, EU leaders, MPs, and MEPs, asking them to allow “the chance to check whether we want to proceed with Brexit”.
In an email to supporters this morning, Shadow Brexit secretary Sir Keir Starmer said the letter “asks them to honour our shared democratic values, it asks them not to turn away from us now and deny us the chance for a final say.
“Add your name to the letter now and send a message to the powerful.”
Subscribe to the newsletter news
We hate SPAM and promise to keep your email address safe