Bookmug

October 3, 2025

If you have been paying attention to my socials and my other blog posts for the last month or two (I don’t know when this will come out tbh), you might have noticed that I did a couple smaller projects where I 3D printed an object and painted it.
Well let me tell you: all of my prior attempts were really just me trying out techniques and seeing how well I can paint 3D-printed models, with the end goal of making this project.
And the day has finally come: I finished it.

How this all started

This all started a couple of months ago, when I found this “Resin 3D Books Coffee Mug” on AliExpress.
I especially like the one with the books actually stacked on top of one another, but given that a lot of the books don’t make sense at all (i.e., the purple book is closed on two opposing sides), I’m not sure that all of them are real.
Especially since the stacked version you can actually buy looks even more fake than the product shot before.

That won’t stop me from taking inspiration from it, of course.

Making a model

I started by making some sketches on a piece of paper to get the rough shape and size right.

At first, I was planning on getting a metal cup to be inserted into the model, but after checking the price on metal cups, I turned my attention elsewhere. And decided to use an IKEA POKAL 330ml glass instead, as I hoped that they would be readily available and well known.
I sort of ran out of time to properly model the glass, so I just cut out a large enough cylindrical shape for the glass to fit into. In retrospect, I quite like that decision, as it also allows plant pots to fit in there without being restricted by the original glass shape.
After settling on the IKEA glass, I took a book from my bookshelf and measured its thickness.
I then used that to calculate how many books I would need for the glass holder to be tall enough.

The entire model was designed using Blender, by stacking, resizing, and slightly offsetting cubes.
After I finished positioning them, I went through every book and loop cut them to create the lids and side pieces. At first I considered just copying them, but I decided that it would look better if they were slightly different. Arguably, it might also have been a good idea to slightly differentiate them in size, but I honestly didn’t think of that.

Obviously, a mug requires a handle, which I also modeled in blender using paths and curves.
My initial idea was to make the handle look like a bookmark. By placing it on the open side of the book, I felt like that would look weird and out of balance and decided to place the handle on the closed side instead.

To make aligning all books easier, I also added four cutouts into the books to fit alignment rods after printing.

Screenshot of a Blender window, with the 3D viewer on the left.
The camera is focused on a stack of books, which are slightly rotated, as if stacked in a hurry. The bookstack has a hole cut out in the center and a handle attached on one side.

If you want to modify the model itself, you can find the Blender project at the end of this post.

Printing

The model consists of seven parts in total: 6 books and the handle.
As there are quite a lot of large objects to print, I decided to optimize my print settings for speed.

When printing the books, I reduced the top layer count to 4 and the bottom layer count to 3. I also reduced the infill to 5% and used adaptive cubic as the infill pattern.
The upper lid of the books requires support materials. I used the Prusa Slicer paint-on-supports auto feature to add the minimal amount of supports to further reduce print time. I also enabled organic supports, as I find them easier to break off.
Furthermore, I also printed books two and six with the handle cutout facing up to further reduce the amount of support material necessary.

The handle was printed with the midsection facing down, with supports enabled and 10% infill. And similarly to the books, I used organic supports.

In the end, the handle took about two hours to print on my Prusa MINI and the books took slightly over four hours each, with the first one taking closer to five hours as it has entirely solid layers.
This means it took me roughly 25 hours to print all the books (without heating & changing filaments) plus another 2 hours to print the handle.

As I planned on painting the entire mug, I just used PLA I had lying around, not really caring for the color.
I even combined multiple small leftovers into frankenfilament, so that I could reuse them. (This came in especially handy when I accidentally broke one of the books)
If you have a printer that can change the filament color mid print, you could even use a different color for the book pages and book bindings.

If you prefer, you can also export the books in groups of two or three using the Blender project to further optimise print time, as you can save on solid infill layers.

Two stacks of 3D-printed books with a hole in the middle placed on a wooden work surface.
The stacks have three books each, stacked without order. In front of the stacks lies the 3D-printed handle.
The parts have different colors.

Assembly

To assemble the mug, you should clean up all your prints first (i.e., remove leftovers from supports), as you might not be able to get them back apart, especially if you glue them.

For assembly, you’ll need four roughly 13 cm long rods with a 3.5 mm diameter.
You might be able to use knitting needles for this or sand down larger rods (alternatively, you could slightly expand the printed holes).
If you want to glue the pieces together, you’ll also need some sort of plastic glue.

Before you start assembling everything, you should probably dry-fit the handle to see if it requires sanding down.
I haven’t added tolerances, as I find it easier to sand down the handle shaft until it fits properly instead of having it sit too loose.

Fully assembled mug with a glass inside. A drinking straw has been placed inside the glass.
The books have been stacked in the correct order with the handle glued on from the side.
The mug is facing the camera from an angle, showing both the handle and one side of the books.

Painting (optional)

I decided to paint the stack after gluing it together, as I thought it might be easier to glue it before painting. But I knew that it would also make it more difficult to keep the paint contained in their areas.

The painting process is fairly similar to the way we painted the bell in a recent blog post, so I’ll only quickly go over it here.
Similar to how we did on the bell, you should start by applying one or two white base coats to the entire object.
I then went on to colour all the books individually. At first I considered painting the books in an old brown, but as I didn’t feel comfortable mixing enough good-looking brown paint, I decided to just paint the books in rainbow colors. After finishing the books, I mixed a large amount of off-white and painted the pages and the handle with it.
At last, I went over areas where the paint got smeared with the original color to try to hide some imperfections until I was left with a fully painted model.

With everything painted, it is time to apply a top coat.
I decided on glossy spray paint, as I find that it makes it look more professional.

Results

Once you have completed the assembly, you can place the IKEA glass inside and fill it with something to drink.

The painted mug with a glass and straw inside placed on wooden planks.
Every book has been painted a single color, forming the colors of the pride flag in the correct order when stacked.
The handle and pages have been painted an off-white color.

As you might have noticed, you won’t be able to drink from this with your mouth directly; instead, you should probably get a longer straw and use it to drink.
As this is made out of plastic, I also would not use it to drink really hot tea.
The PLA melts at ~200 °C, but I wouldn’t risk it.

If you don’t want to use it to drink - which is fair, given how janky this is - you can use it for your favourite plants.
Make sure to place a secondary container inside to make sure it doesn’t leak - or use plastic plants.

The painted mug has been placed on stone floor tiles in front of a wooden door.
Instead of the glass, a plant has been placed inside the cutout hole.
The plant has thin and long leaves, almost making it look like hair is growing from it. The same mug has been placed on a shelf with a climbing plant inside.
The plant hangs down over the books and hides most of them, except for some rainbow colours shining through.

When I first started printing all the books, my initial feeling was that I would never do this again, especially given that it took me too long.
I don’t really enjoy having to wait for my 3D printer to finish its job; I actually find it a bit stressful - having to wait that long. In comparison, I actually quite enjoyed the painting process and found it relaxing. I still would not paint the model again, as it takes a lot of time, and my wrists were really tired afterwards.
After getting some feedback on the design from other people, I think I’ll probably make some more different variations of it in the future, as it really makes for a hilarious gift.

The model and source files are licensed under CC-BY-SA 4.0