Have you ever wished a book webshop could offer more than a standard product catalogue?
Mesencsi is a custom e-commerce and digital storybook platform built for an independent children’s book seller. It combines a complete webshop with an in-house system for creating, publishing, and reading interactive storybooks.
The application was built without Django or another full-stack framework. Its backend and API are implemented directly with Python, FastAPI, and PostgreSQL, while the frontend uses custom HTML, CSS, and JavaScript.
Features
Customer accounts and guest checkout
Product, order, discount, and gallery functionality
Barion payment integration
Separate customer and admin workflows
Custom storybook editor, publishing flow, and reader
The Challenge
The client needed a complete webshop while also needing a way to create and publish original digital storybooks without relying on a separate design or publishing tool. A standard e-commerce setup could not cover the required content creation, product management, payment handling, and reading experience in one place.
The Solution
I built a tailored platform around the project’s requirements. The FastAPI backend handles the application logic, API integrations, and business workflows, while PostgreSQL stores persistent data. A custom frontend supports both customer-facing shopping and administrative management.
The Webshop
The webshop was designed around the client’s visual identity rather than a pre-built e-commerce template. Visitors can browse products, purchase as guests or registered customers, manage account details, view previous orders, and use saved profile information during checkout.
Mesencsi homepage
Products
Cart and checkout
Digital Storybook Editor
Inside the admin panel, the client can create and manage storybooks through a visual editor. Individual pages can contain images and text, with content arranged and edited visually. Books can be saved as drafts, previewed, and published to the customer-facing site when ready.
Storybook editor
Storybook Reader
Published books open in a dedicated reader built with TypeScript. The reader uses a two-page book layout with illustrations and text, plus an animated page-flip transition that brings the interaction closer to reading a physical book.
Storybook reader
Video Walkthrough
This demo shows the storybook reader in use, including the page-flip interaction.