SAN FRANCISCO – Anti-Trump protests rippled through the USA on Tuesday night and Wednesday, after an election that left many in shock. As soon as the result was called, students from UC Berkeley left their dorms to march through Berkeley and Oakland, chanting “Fuck Donald Trump!”

From east coast to west, thousands of students and workers expressed their outrage at the farcical election of this overgrown frat-boy – a man who brags about sexual assault and brain-vomits the kind of bigoted hate speech that most members of the ruling class prefer to keep with their private yachts.

Hundreds marched in Chicago; thousands in Boston. In New York City, protesters blocked off the streets around Trump Tower. Philadelphia, Los Angeles, Washington, D.C., Portland, Seattle; all around the country people are flooding the streets to say that Donald Trump is not their president.

In liberal San Francisco, where I work, election night started with a mix of optimism and anxiety. Gradually, anxiety turned to dread, then despair and resignation as more and more states were called for the Republicans. It seems like nobody was prepared for this.

On Wednesday morning, grey-faced tech workers nursed their hangovers and commiserated. Meanwhile, high-school students around the San Francisco Bay Area led the way.

Berkeley High School students took to the streets around 9am, joined by several teachers. They marched to UC Berkeley, where university students joined them. Defiant, they waved Mexican flags, chanted and climbed the base of the Campanile.

After work on Wednesday, I join a thousand or so protesters on Market Street in downtown San Francisco. The march is in full swing by the time I get there, and I jog to catch up.

Immediately, the flat despair that infected me during the day is washed away by a joyful energy. The protesters chant and whistle as we march toward the Castro. There’s a chant for every conceivable topic. “Black Lives Matter!”, “Water Is Life!”, “Pussy Grabs Back!”

Jim is a white guy in his mid-thirties. “I was at home by myself”, he tells me. “Crying. I’m new here, I moved from Florida, and I don’t have friends yet. But being here …” He looks like he’s about to cry again, but I think he feels the same way I do – touched by the cheerful defiance of the crowd, the heartfelt solidarity expressed in chants, banners and placards.

“I don’t know why people would vote for Trump”, Jim says. “He’s a misogynist, a racist”. We talk for a block or so. He voted for Clinton, but he supported Bernie Sanders. “For me, the turning point was seeing Trump making fun of that reporter for being disabled. That’s what made me say, ‘Never Trump’.”

Ariel came to the rally with a friend, straight from work in her lab coat. “I’m here to express my outrage at the results of this election”, she says. “This man was supported by the KKK.” Ariel is a doctor. She tells me that her patients are underserved by the healthcare system. “They’re the ones who will suffer from this”, she says. “I’m here for them too. I’m so scared about what will happen to my patients.”

Ariel talks a lot about her fear. She’s scared, she says, over and over; but she’s smiling. It’s hard not to, as people stuck in traffic honk their support and waves of delighted cheers surge through the crowd in response.

I move through the march. It has doubled in size and it keeps growing. Again and again, demonstrators describe their confusion, grief and anger – while grinning like mad. The march feels like a carnival now. Toddlers and their parents wave from apartment buildings.

An orange-faced, blond-toupéed piñata bobs above the crowd on a pole. People take ecstatic selfies and lean out of bars to shout along with us: “Fuck Donald Trump!” We call back to them, telling them to join us, and some of them do. By the time we reach the Mission district, I look back down the street and realise I can’t see where the march starts or where it ends.

“This is history”, one of the march organisers calls. “Not this election – this.” She gestures at the crowd, and we cheer.

This election was a complete shitshow from beginning to end. The fact that this race was fought between Trump and Clinton – the two most unpopular presidential candidates in US history – reveals capitalist “democracy” for the sham that it is.

I’ll be proud to stand with students and workers who reject the results of this farce, and want to fight for something better. Protests, strikes, sit-ins and walkouts – these are the real politics of hope.