Rain gardens can be a simple, effective way to manage and treat excess storm water and add another layer of depth and interest to a garden. They are generally designed to slow water down from its gushing pace over impervious surfaces, where it rushes into streams creating erosion problems. Slowing the water down allows for release into streams at a more moderated pace and for infiltration back, eventually, into the aquifer. It takes years for water to drip through layers of soil and strata to recharge aquifers- our ancient water vaults, but it’s important. Water also becomes clean as it filters through plants and soil, so we aren’t responsible for flushing polluted water that has gathered oil from roads and asphalt from roofs directly into streams. RainGardens.org seems to be a good website, making rain garden building basic. They have the right idea about planting with native, water-loving plants (and drought-tolerant is a good consideration too- yes there are plants that tolerate both conditions!) Plants can help filter and uptake water and also offer a source of food and habitat for native insects, such as butterflies.
I designed a rain garden for a local community garden and they had good success installing it themselves. We used a swale/rain garden concept where water was routed from the road via a swale into a series of ephemeral ponds that encouraged infiltration and let the excess flow into the forest towards a stream in a slower fashion. They used rocks placed at random within the swale to stabilize soil and disperse water and planted various native plants. See quick video image of the raingarden at Dunwoody Community Garden at Brook Run.