Philippines President Ferdinand Marcos declared suspension of government work and classes for Monday as a category 3 tropical storm barrelled through the main island Luzon after making landfall northeast of the capital Manila.
Nearly 8,400 people were pre-emptively evacuated from the path of Typhoon Noru, which slightly weakened with sustained winds of 185kph (115mph) and gusts of up to 240kph (149mph) after making landfall.
Flights were cancelled, ferries halted and bus routes shut as heavy rains and strong winds toppled trees and power lines.
Marcos suspended classes and work in Luzon, which accounts for more than two-thirds of the economy and roughly half of the country's 110 million population.
"The wind is calmer now but it's dark because we have no power supply," Eliseo Ruzol, mayor of coastal General Nakar town adjacent to Noru's landfall location, told DZRH radio station.
The mayor of Dingalan town, also on Luzon, told DZMM radio station communication lines were severed and the power was out in some communities.
Waves whipped up by the category 3 typhoon were battering ports, photos and videos on social media showed, and low-lying areas were flooded.
The Philippines, an archipelago of more than 7,600 islands, sees an annual average of 20 tropical storms that cause floods and landslides. In 2013, Typhoon Haiyan, one of the most powerful tropical cyclones ever recorded, killed 6,300 people.
Noru, which is moving westward over rice-producing provinces in Luzon, is likely to emerge over the South China Sea by late Sunday or early Monday.