Crafting a Book App for a Client

posted 2 min read

The Backstory: How It All Began

Every project starts with a spark, and for Persona Press, it began with a simple client request on

Fiverr:
"I want to create a personalized bookstore where users can preview, customize, and order books."

As a freelance full-stack developer, this sounded like a perfect challenge. I’d previously worked on e-commerce systems and SaaS dashboards, but this was different—it required creative thinking, seamless UX, personalization logic, and monetization support. I took it up and turned it into something far more scalable and delightful than the client imagined.

Project Overview
Name: Persona Press
Client: Confidential (via Fiverr)
Stack: MERN (MongoDB, Express.js, React, Node.js), Tailwind CSS, Cloudinary, Razorpay, Framer Motion, PDFKit

✨ Features I Built

Explore Personalized Books
Designed a modern UI to showcase books

Dynamic filtering based on genre/category

Live search for title & author

Responsive grid layout

Book Detail View with Trial Reading

Showcases metadata: author, price, description

Displays trial content with ad integration

Includes sample PDF preview using Cloudinary-hosted raw files

Smooth Checkout Experience

The user can add an address, choose a delivery type

On successful payment (via razorpay), the order is placed

Backend sends invoice + digital copy (if applicable)

Admin Dashboard

Upload books with images, sample/full PDFs, and content

Tags, categories, trial page limit, and pricing fields

Secure login

Monetization

Display trial-reading ads to non-paying users

Fixed delivery + dynamic printing fees

Digital vs Physical Pricing Logic

Cloudinary Integration

Hosted all media (covers, sample PDFs, full books)

Used different resource types (image, raw)

⚙️ Tech & Tools Used

Frontend: React, Tailwind CSS, Framer Motion

Backend: Node.js, Express.js, MongoDB, Cloudinary SDK

PDF Handling: PDFKit for dynamic PDF generation

Payments: Razorpay REST API integration

Storage: Cloudinary (image + raw uploads)

Hosting: Netlify(Frontend), Render (Backend)

Outcome & Feedback

The client was highly satisfied and left a glowing 5-star review:

"Really impressed by the final result. I just gave him a very raw idea, and he crafted it with details very beautifully. Liked the way he gives suggestions and asks before doing anything to the project. Interested in doing more projects with him."

This was one of those projects where good communication and tech alignment produced a stunning result.

My Takeaways

Building niche platforms = big impact for solopreneurs

A clean UI backed by a powerful backend wins hearts

Use modular code to scale such platforms easily

Personalization + monetization is a killer combo

Wanna Build Something Similar?

I specialize in building:

✍️ Personalized content platforms

SaaS dashboards

Scalable MERN-stack apps

✨ Beautiful, fast UIs with Tailwind + GSAP

Check out my Fiverr gig:

Fiverr gig

Portfolio

Thanks for reading! Let's build the next big thing together.

If you read this far, tweet to the author to show them you care. Tweet a Thanks

Awesome work—really cool to see how you turned a simple idea into a full-blown, scalable platform with such a smooth UX! Curious, how did you handle scaling the PDF previews and downloads as more users started using the site?

Thanks a lot! Really appreciate it.
Right now, I’m using Cloudinary to handle PDF previews—basically converting the first page into an image for smooth display and fast loading. For downloads, users get access to the actual PDF stored securely.

I'm still improving the system and exploring ideas like queue-based processing and caching for future scaling. Loved that you noticed the UX—more updates coming soon!

More Posts

Create a simple email sender app

Sunny - Jul 12

Starting a new web app with a React project, should you go with React JavaScript or TypeScript?

Sunny - Jun 24

A Web App to Showcase all your GitHub Projects

2KAbhishek - May 6, 2024

Still.js - A way to leverage Vanilla JavaScript for Complex and Enterprise Level Web Development

Nakassony Bernardo - Jun 29

3D portfolio for a web dev

nitinkumar30 - May 14
chevron_left