Kelly Goodwin sifted through the rubble of what used to be her kitchen, dazed after a tornado ripped through eastern Iowa and flattened dozens of homes in three communities.

Hours earlier, she was spending a quiet afternoon in her home when she heard the wind howl. She glanced out the window, saw a tree rip from the ground and hurried to the basement.

"When I came back up I saw all this," Goodwin said, waving her arms at the wreckage.

A couple blocks away, the post office didn't fair any better. Its four walls were ripped away, leaving a clear view of post office boxes and equipment inside amid piles of rubble and tree limbs.

Similar scenes of destruction were visible across Muscatine County and surrounding areas, where a tornado Friday tore through businesses and homes, knocked down trees and power lines but caused only minor injuries. Heavy rains also poured across the region, causing flooding and several traffic accidents, including one fatal wreck near Coralville.

The tornado, with winds between 136 to 140 mph, struck the town of Grandview, went north through Fruitland and dissipated in the Muscatine area about 10 minutes later, said Jeff Zogg, a forecaster with the National Weather Service in Davenport.

Gov. Chet Culver declared a disaster emergency for Jackson, Louisa and Muscatine counties, authorizing state and local authorities to assist in the cleanup.

In Grandview, a town of about 600, oak trees were shredded in various parts of town and debris from flattened homes littered the streets. One brick house stood roofless, while a few uprooted trees had busted through a nearby garage.

Darryl Erickson, a pastor at Grandview Bible Church, said he was in his office when the twister hit.

"All of a sudden it started getting darker and I heard a lot of wind," Erickson said. "I looked out the window and saw stuff flying. And it was all over just like that."

His church sustained only minor damage and a downed power line. Nearby, a roof had landed on a pickup truck.

Mark Husar, the general manager of a car dealership in Muscatine, population 23,000, said he saw a cloud of debris blowing in his direction and quickly moved employees and customers into a storm shelter.

"I've got 80 cars with windows blown out, two cars on top of cars, my roof is ripped off," he said. "Applebee's, which is about 50 yards away - their front window is blown out and I've got McDonald's - they're about 1 1/2 blocks away - in my lot. Their roof is partially torn off."

The ordeal lasted about 15 seconds, Husar said. Another car dealership across the street was untouched, he said.

Between 15 and 20 roads have been closed while crews repair downed power lines and clear the streets of debris, said Jeff Carter, Muscatine County's emergency management coordinator. He expects most roads should reopen Saturday.

"Some of it looks pretty bad," he said, noting that he's already seen several homes with major damage.

"Boom, they're all gone," Carter said. "Nothing but rubble is left."

Several buildings also sustained significant damage near Bellevue in northeast Iowa, though weather officials said they have not confirmed whether that was caused by a tornado.

In Muscatine, Pizza Hut manager Gary Hawn said had a restaurant full of customers and employees when the tornado alarm sounded.

He ushered everyone into the walk-in refrigerator. Moments later, it was over, he said.

Hawn said he went outside and saw debris strewn across the parking lot, including the roof of a nearby apartment complex. The signs of several nearby fast food restaurants had blown off, he said, and other debris had damaged and destroyed cars in the parking lot.

"We were lucky. The winds were really strong. We just got everybody in the walk-in, and everybody was safe," he said.