Redesigning Bookshelf Page

2 min read

For my 2026 book logs, I created an HTML/CSS bookshelf. This is a proud project for me — I built this completely hand-coded, no AI.

Check out the bookshelf on X

Current implementation

  1. I created an API in Python for books.

  2. Hosted the API in Docker.

  3. Plugged the API with front-end.

  4. Created a CMS to manage books.

Problems

  1. API has no month key. This became a problem when I wanted to filter books by upcoming months.

  2. Images are not stored in persistent storage. With every build or restart of the container, images were broken.

  3. Monitoring on Docker was missing. Whenever Docker went down, there were no notifications.

New solution

So I sat and decided to rework on this project as I was missing out on updating my books & tracking reads.

Here is the HLD. Boxes in red are optional.

Bookshelf HLD

API design

My requirement:

  1. Have date key & can filter based on date

Re-use?

  1. There is database reuse.

  2. CMS will be 100% reuse.

  3. API code will be reused, just needs an update for the new feature.

tbh, I need something to work over weekends and not using AI.

Happy coding!!