OAKLAND, Calif. ― Sen. Kamala Harris (D-Calif.) formally launched her 2020 presidential campaign Sunday, framing her prosecutorial career as one defined by fighting for the people.

Speaking to a large crowd, which her press secretary estimated to be 20,000 people, Harris said her resume — which includes serving as district attorney of San Francisco and attorney general of California — was built on the “profound impact law enforcement has on peoples’ lives.” She said she got into law to “protect people,” and that fighting “for the people meant fighting for a more fair criminal justice system.”

“In my whole life, I’ve only had one client: the people,” she said.

In the week since announcing her intention to run, Harris has faced intense scrutiny from the left.

A scathing New York Times op-ed published a few days ahead of Harris’ announcement questioned the former prosecutor’s reputation as a progressive, pointing to her role in wrongful convictions as well as her record on criminal justice issues such as police body cameras, sentencing reform and the death penalty. Harris’ campaign disputed the characterization of her prosecutorial record.

She’s also faced questions over whether she failed to go after Wall Street hard enough after the 2007-08 mortgage crisis, as well as criticism from sex workers and advocates who say Harris’ efforts to fight sex trafficking has only hurt them.

Harris herself appeared to nod to that criticism during her remarks at the rally.

“If I have the honor of being your president, I will tell you this: I am not perfect. Lord knows, I am not perfect,” she said. “But I will always speak with decency and moral clarity and treat all people with dignity and respect. I will lead with integrity. And I will speak the truth.”

Harris’ speech was also a forceful condemnation of the status quo under President Donald Trump. She outlined the ways in which America under his leadership isn’t “our America,” listing examples including the separation of migrant children from their parents at the border, the killings of black men and women and the inaccessibility of health care.

“America, we are better than this,” she told the crowd. “People in power are trying to convince us that the villain in our American story is each other. But that is not our story. That is not who we are. That’s not our America.”

Harris spoke at Frank Ogawa Plaza in downtown Oakland, her hometown and one of the most diverse cities in America. The public square, named for the civil rights leader who was the first Japanese-American to serve on Oakland’s city council, has been the site of many protests, including 2011′s Occupy Oakland demonstrations. It’s also where former President Barack Obama ― then the junior senator from Illinois ― drew 10,000 people in the early stages of his own presidential bid, in March 2007.

In addition to acknowledging Harris’ roots, the campaign’s decision to launch in Oakland also has political advantages. With California’s primary moved up to March 2020, Golden State voters will have a large say in who becomes the Democratic nominee — a reversal from years past, when Californians were an afterthought in most presidential races. Harris, so far the only Californian in the race, could gain an early advantage with long-ignored voters there by making them central to her campaign.

Kamala Harris: “I am so proud to be a daughter of Oakland, California” pic.twitter.com/Xxl6h4ulzu — Mollie Reilly (@MollieReilly) January 27, 2019

During her remarks, Harris repeatedly emphasized her campaign slogan, “for the people,” highlighting some of the more progressive planks of her platform: “Medicare for all,” universal preschool, raising working families’ incomes via a new tax credit, and criminal justice reforms. She also underscored the urgent need to fight climate change.

“The people in power are no match for the power of the people,” she said.

Harris also criticized the Trump administration for fostering division.

“As Americans, we have much more in common than what separates us,” she said. “So, let’s not buy into this stuff that they are trying to peddle, these powerful voices that are trying to sow hate and division. Let’s hold onto the fact that we know on the fundamental issues, we all have so much more in common than what separates us.”

Sarah Ruiz-Grossman/HuffPost Crowds lined up on the streets of downtown Oakland ahead of Kamala Harris' campaign kickoff.

The line of Harris supporters and local residents interested in hearing more about her candidacy weaved around the buildings of downtown Oakland hours before the rally. Many wore shirts emblazoned with her campaign logo — a tribute to Shirley Chisholm, the first black woman to seek a major party’s presidential nomination; others donned pins emblazoned with Harris’ photo and the phrase “Madame President.”

Several attendees spoke of the symbolic importance of Harris’ candidacy.

“I’m from Oakland, I graduated from Howard University, and I’m an [Alpha Kappa Alpha] like she is,” said Svonne Underwood, who now lives in nearby Pittsburg. “I never thought I’d see someone from Oakland, that graduated from Howard, run for president, to really have a chance. And I think she has a good chance.”

Latrece Seneca, who lives in Santa Barbara County, said Harris’ candidacy could inspire other women of color to seek higher office.

“There always has to be a first for there to be someone to follow and to do those same things, or even think, ‘Oh I could actually do that,’” she said.

Sarah Ruiz-Grossman/HuffPost The line to get in the rally stretched for several city blocks.

Harris’ campaign launch comes less than a week after she announced her intention to run in an interview on ABC’s “Good Morning America.” With an ever-expanding group of Democrats entering the 2020 race — including Sen. Elizabeth Warren (Mass.), Sen. Kirsten Gillibrand (N.Y.) and former San Antonio Mayor Julián Castro ― Harris has wasted no time, with an apparent strategy of outpacing the rest of the field. She raised $1.5 million in the first 24 hours of her campaign, and visited South Carolina on Friday to speak at a fundraiser hosted by her sorority, Alpha Kappa Alpha. And after Sunday’s rally, she was set to immediately depart to attend a CNN town hall in Iowa.