Step 1: Components
2 of 6'8" custom cut and threaded 3/4" pipes for the length of the bed
4 floor flanges for legs
4 of 12" pipes for legs
2 of 4" pipes for footer
2 elbows for footer
1 of 60" pipe for footer
2 of 7" pipes for header
2 reverse thread joiner unions
2 three-way joints for the header
2 of 8" pipes for header
2 straight unions (to provide a small ledge for the header board)
2 of 18" pipes for header
1 of 60" pipe for header
1 5' 6" header board of your choice
11 of 11" wide (nominally 12" ) 5' 6" wooden slats
half-circle pipe fittings (pictured) for fixing the pipe to the header board/bed slats, with #8 x1/2" phillips flathead screw
Step 2: Headboard
A key component in the assembly are the pipe joiner components you can use to bring two pipes together using reverse threads (pictured), which avoids unscrewing one pipe while attempting to screw in the other side. Even so, screwing the header on does not constrain the geometry too much. Therefore, I pushed the header side up against a wall before fixing the slats in place, which makes the geometry rigid.
Step 3: Wooden Slats, Weight Distribution and Treatment
Mold can grow on untreated wood left near an open window in San Francisco. To prevent this, I stained all the slats and the 2x4. Stain doesn't prevent mold per se, but it helps, as does wiping it down with bleach once a year, or treating with polypropylene (although I don't like the glossy finish of polypropylene as much).
That's it! With the exception of the 6"8" custom pipes that can be cut and purchased at a plumbing store, the remaining components are standard ware at local hardware stores. As you can see from the description of the assembly, it can be assembled in a couple hours (minus staining of wood), easily disassembled for a move, or modified to suit your changing needs. Ciao!