We recently shared how we made the wraparound fabric headboard in our son’s room. Today I want to describe the custom bookcase we built at the foot of his bed. It was a satisfying DIY that fills an awkward gap while providing convenient bedside book storage — plus a secret hidden compartment. The build was straightforward, easy for most DIYers, and fully customizable to fit your own space.

Why Build Custom Book Storage?
This room is the smallest in our house, and the bed tucks neatly against the wall with just enough space at the end to create useful storage. Before this project, his books were shoved into baskets that barely fit in the gap and were awkward to reach. That wasted a useful area and made nightly reading clumsy.

He doesn’t need a tall, inaccessible bookcase right now, so we avoided a bulky piece that would be mostly decorative. In his previous room, the built-in shelves ended up holding only the items he could reach on the lowest shelf. We wanted something practical at mattress height that he can use easily.

Instead of more vertical shelving, we designed a low-profile, built-to-fit bookshelf that uses the space efficiently without being intrusive.
Materials & Tools
We’ve made several built-ins and storage pieces, and we prefer MDF for these projects because it’s sturdy and has a smooth finish that accepts paint well.
- 1/2″ MDF panels for the shelf box
- 1×2″ boards for finished edges
- Miter saw
- Table saw or circular saw
- Nail gun
- Measuring tape
- Stud finder
- Wood glue
- Primer
- Paint
Step 1: Cut and Dry Fit the MDF Panels
We cut the MDF pieces with a circular saw and dry-fit everything before final assembly. The design is essentially a single shelf at mattress level with a shallower box on top. The bottom shelf is supported by a 1×2″ ledger attached to the wall (screw into studs where possible) and a flat MDF panel screwed into the bed’s footboard. That back panel prevents books and toys from sliding under the shelf.

We planned to add 1×2″ trim for extra strength and a finished look.
Step 2: Prime and Paint the Pieces
Painting the components before assembly made the job much easier. Once the MDF pieces were cut and dry-fit, we primed and painted them so there would be minimal touch-up after installation.
Step 3: Secure the Bottom Shelf with Glue and Nails
After paint dried, we assembled the shelf using wood glue and a nail gun. Nails hold parts quickly, while glue provides long-term strength. Fill nail holes and sand before final paint as needed. We nailed the shelf into the two support pieces beneath it to keep everything stable.

Step 4: Add the Top Shelf and Middle Divider
We installed a middle divider to strengthen the unit and help organize the books. The top pieces are slightly shallower than the bottom to allow room for the 1×2″ face trim we planned to add later. All top pieces were secured from above with nails and glue.

Step 5: Attach the 1×2″ Finish Pieces
We used 1×2″ boards to finish raw edges and act as supports at the open end of the shelf. We debated closing the end with a solid panel, but an open-ended design felt lighter for the room. The trim made the unit look more substantial and cohesive.

Step 6: Caulk, Fill, and Touch Up
Once everything was assembled we caulked seams, filled nail holes, and did final touch-up painting. Taking time on these details makes the finished piece look clean and built-in.

Bonus: A Secret Compartment
We didn’t want the cavity under the shelf to go unused, so we added a removable panel that fits snugly but can pop out when pressed in the right spot. We fastened scrap 1×2″ strips along the inside lip so the panel rests securely but can be removed for access. Right now it hides spare picture frames and a few odds and ends. If needed later, we can add a small handle for easier access.

The Finished Bookshelf
We built the bookshelf to the same height as the upholstered headboard so the whole unit reads as a cohesive, wraparound installation that cozies the bed on three sides. We considered painting it the same blue-gray as the headboard but ultimately let it blend with the wall for a subtle, integrated look.

Having the bedtime books right at hand has been a small but meaningful improvement. He also has a designated spot for baskets that hold favorite collections like cards and small toys — essential for any potential middle-of-the-night emergencies.

Cost Summary
The combined cost for this built-in and the fabric headboard came in under $135. That included roughly $35 for MDF, $30 for the 1×2″ trim, and about $70 for fabric and batting. We even had enough leftover fabric to use on another headboard project.

Room Update
This was the room about eight weeks after we moved in. Since then we’ve added more built-in storage and a colorful planked wall treatment around the bookshelf to tie the whole area together. The small, functional bookshelf has made a noticeable difference in daily routines and room organization.

P.S. This project was part of our broader house updates — small, practical fixes that make daily life easier while keeping the rooms kid-friendly and tidy.
*This post contains affiliate links, so we may earn a small commission when you make a purchase through links on our site at no additional cost to you.