There were shouting matches, even some violence, yesterday in Portland, Ore., when a group of President Trump supporters ran into angry counterdemonstrators. Here's NPR's Martin Kaste.

MARTIN KASTE, BYLINE: This Trump free speech rally probably would have gone mostly unnoticed had it not been for the shocking murder of two men on a transit train here on May 26. They'd been defending two women from harassment, and the accused murderer is an alleged white supremacist who'd been spotted at similar rallies. Many here in Portland thought it would be insensitive, to say the least, to go through with this rally. But the organizers said the accused murderer is not part of their movement, and they didn't see why they should cancel their rally.

UNIDENTIFIED MAN #1: What do we stand for?

UNIDENTIFIED CROWD: Freedom.

UNIDENTIFIED MAN #1: I said, what do we stand for?

UNIDENTIFIED CROWD: Freedom.

KASTE: A few hundred Trump supporters gathered downtown as promised, but they found themselves outflanked by a few thousand other people, all doing their best to shout them down.

KASTE: The crowds were held back by grim-faced police in riot gear. And inside the pro-Trump rally, a lot of people were wearing homemade riot gear of their own - shin guards and helmets and the kind of martial bunting that you might see in a superhero comic. One inspiration for this battle-ready look is a man named Kyle Chapman. He's been up and down the West Coast lately, mixing it up with leftists, and he's famous with this crowd for a viral video of him in a street battle at Berkeley.

KYLE CHAPMAN: And I was just one person, you know? And I made a shield. I took a stick, threw my gas mask on and my helmet, and I went in there and I cracked the skulls of some Commies that were attacking us. And now today, we're all here together standing up for liberty and freedom.

KASTE: He says that freedom is now under threat in the country's more liberal bastions. He lives in the Bay Area, and he says he risks a beating whenever he goes out in the street wearing his red Trump hat.

CHAPMAN: People of conservative thought and ideology are being systematically oppressed.

KASTE: But that doesn't get him a lot of sympathy here in Portland, especially from the leftist protesters who are also dressed for battle, and some of them wear masks. This one was outside the police perimeter waiting for the Trump rally to end.

UNIDENTIFIED MAN #2: They are white supremacists. They are here to incite terror and fear.

KASTE: So you think they're going attack random people.

UNIDENTIFIED MAN #2: Yes, I do. They're known to do it. Kyle Based Stickman Chapman attacks people with sticks. Spartan guy with the chain, he attacks people.

KASTE: The two sides had clearly scoped each other out, and they seemed primed for a fight. But then the Portland police had other ideas.

(SOUNDBITE OF EXPLOSION)

UNIDENTIFIED MAN #3: Yeah.

KASTE: Using flashbang grenades, cops pushed back the most battle-ready group of the black-clad leftists while the Trump supporters watched from their side and cheered. Then they sang.

UNIDENTIFIED CROWD: (Singing) The bombs bursting in air gave proof...

KASTE: And despite being so badly outnumbered, the Trump supporters took it as a victory watching the Portland police pushing back their liberal enemies. Martin Kaste, NPR News, Portland, Ore. Transcript provided by NPR, Copyright NPR.