One year on, an anxious, fragmented France is paying tribute to the victims of the killings at Charlie Hebdo magazine, with old divisions made worse by what President Francois Hollande has called "a terrible year".
After the Islamist attacks that killed 17 on January 7-9 last year at the satirical weekly and at a Jewish supermarket, the French rallied, marched and lit candles in emotional gatherings celebrated as "the spirit of January 11", the day four million took to the streets.
But cracks in that unity soon appeared and, a year later, after an even bloodier assault on Paris by another set of home-grown Islamists in November, politicians are embroiled in a bitter debate over homeland security, and the anti-immigrant National Front (FN) is stronger than ever.
The slogan "Je suis Charlie," a defiant cry of solidarity that appeared everywhere immediately after the killings, is little seen a year on.
"Events such as the January or November attacks trigger moments of unity, in reaction. But that is not enough to offset deep divisions," said Brice Teinturier, head of the Ipsos polling organization in France.
"The divisions are huge. There are several Frances and they are clashing," he said, describing a France of big cities turned towards the future, a rustbelt France that feels crushed by globalization, and a France of housing estates that feels forgotten.
Regional elections last month highlighted those divisions.
In the first round, the National Front came first, doing well in rural and small-town France. In the run-off, voters in big cities helped to keep the Front out of power, exposing another deep split, this time between those who look to the far-right for hope and those who reject it.
In a further sign of tension, a Muslim prayer hall was ransacked to cries of "Arabs out" during a protest rally in Corsica after firemen were attacked last month on a housing estate with a large migrant population.
While the "spirit of January" prompted politicians of all sides to paper over differences for a while, the Nov. 13 killings of 130 people across Paris were quickly followed by criticism and divisions.
The most divisive issue is the Socialist government's plan to strip dual citizens of their French nationality in terrorism cases, a proposal supported by the National Front and until now opposed by left-wing politicians.
Opinion polls show the plan is overwhelmingly backed by voters, but it caused outcry within the ruling Socialist party and its allies. Even Hollande's justice minister and his former prime minister criticized it.
Opponents say the plan would further divide a fragmented society by making distinctions among French citizens. Hollande urges critics to rally behind him in the name of national unity.
About five percent of French people aged between 18 and 50 hold two passports. That is the case for two-thirds of north Africans who have become French, but only a third of their children. They form the majority of France’s Muslim population, the biggest in Europe.
"Instead of addressing the real issues to boost cohesion, (the government) pretends they come from abroad and wants to push them abroad," said Dominique Sopo, the head of anti-racism group SOS Racisme.
SOS Racisme has received calls from people who for the first time felt discriminated against because of their ethnic background or skin color, he said.
"There is a lot of tension around everything that has to do with religion and secularism," said Nicolas Cadene, a senior official at France's Observatory of Secularism, a government body that promotes secular values.
"It's linked to the social, political, economic and identity crisis that France is going through, which leads some to withdraw into their shells, to turn to identity politics."
While most French people rallied together after the Charlie Hebdo shootings, that unity started to crack after a few days.
Some high school children in poorer suburbs with large immigrant populations rejected the "Je suis Charlie" slogan because they did not want to support a publication that lampoons religion.
Social and economic fragmentation was already a major theme in Jacques Chirac's 1995 presidential campaign. His pledge to tackle the "social fracture" that caused economic inequality helped to get him elected.
Yet critics say neither he nor subsequent presidents have managed to bridge the gap between France's privileged insiders and its struggling outsiders.
It will be a big issue in the 2017 presidential elections.
"What does France stand for? This will be the question for 2017," said Stephane Rozes, head of the CAP political analysis group. Mainstream parties must look harder for credible answers, he said. "If it's just empty words, it will play into the hands of the FN and the Islamists."