Major gains by a newly-formed left-wing alliance and the far-right in voting on Sunday put French President Emmanuel Macron on course to lose his parliamentary majority, a blow to his hopes of major reform in his second term.
After Mr Macron's re-election in April for a second term, it was important he secured a majority in the run-off elections to get his promised tax cuts, welfare reforms and raising of the retirement age through parliament.
His Together coalition was on course to be the biggest party in the next National Assembly, but on 200-260 seats, it is well short of the 289 seats needed for a majority, according to a range of projections by five French polling firms.
If confirmed, the results would severely tarnish Mr Macron's April presidential election victory where he defeated the far-right to be the first French president to win a second term in over two decades.
The new left-wing coalition Nupes under 70-year-old figurehead Jean-Luc Melenchon was on course to win between 149 and 200 seats.
The coalition, formed in May after the left suffered a debacle in April presidential elections, groups Socialists, Communists and greens.
That left only had 60 seats in the last parliament, meaning they could triple their representation.
Far-right leader Marine Le Pen's National Rally party was on track for big gains after having only eight seats in the last parliament.
It would to send between 60 and 102 MPs to the new parliament, according to projections.
Falling short of the majority would force Mr Macron into tricky partnerships with other parties on the right to force through legislation.
Emmanuel Macron swears in for second term — in pictures
There could now potentially be weeks of political deadlock as the president seeks to reach out to new parties.
The most likely option would be an alliance with — or poaching MPs from — the Republicans (LR), the traditional party of the French right who are on track to win 40 to 80 seats.
The nightmare scenario for the president, the left winning a majority and Mr Melenchon heading the government, appears to have been excluded.
It has been 20 years since France last had a president and prime minister from different parties, when right-winger Jacques Chirac had to work with a Socialist-dominated parliament under premier Lionel Jospin.
The ruling party's campaign had been overshadowed by growing concern over rising prices, while new Prime Minister Elisabeth Borne failed to make an impact in sometimes lacklustre campaigning.
French television reports said Ms Borne had gone to the Elysee Palace to talk with Mr Macron before the projections were published.
The jobs of ministers standing for election were also on the line under a convention that they should resign if they fail to win seats.
In France's Caribbean island of Guadeloupe — where the poll is held a day early — Justine Benin was defeated by Nupes candidate Christian Baptiste Saturday, a loss that jeopardises her role in the government as Secretary of State for the Sea.
Scholz, Macron and Draghi and Iohannis make first Kyiv visit — video
On the mainland, France's Europe Minister Clement Beaune and Environment Minister Amelie de Montchalin are facing tough challenges in their constituencies, with both likely to leave government if defeated.
The contest between Together and Nupes has turned increasingly bitter over the last week, with Mr Macron's allies seeking to paint their main opponents as dangerous far-leftists.
Senior MP Christophe Castaner has accused Mr Melenchon of wanting a “Soviet revolution”, while Economy Minister Bruno Le Maire called him a “French (Hugo) Chavez” after the late Venezuelan autocrat.
Mr Macron headed to Ukraine last week, hoping to remind voters of his foreign policy credentials and one of Mr Melenchon's perceived weaknesses — his anti-Nato and anti-EU views at a time of war in Europe.
Mr Macron had before embarking on the trip called on voters to hand his coalition a “solid majority”, adding “nothing would be worse than adding French disorder to the world disorder”.
Mr Melenchon has promised a break from “30 years of neoliberalism” — meaning free-market capitalism — and has pledged minimum wage and public spending rises, as well as nationalisations.
Turnout, seen as crucial to the outcome of the vote, was at 38.11 per cent with three hours of voting to go, down on the 39.42 per cent recorded in the first round on June 12 at the same stage, although up on the 35.33 per cent recorded in 2017, the interior ministry said.
Meanwhile, polling firms predicted that abstention rates would be between 53.5 per cent and 54 per cent, higher than the 52.5 per cent recorded in the first round.
The first-round vote served to whittle down candidates in most of the country's 577 constituencies to finalists who went head-to-head Sunday.