- Client project
- Websites
- Web apps
Libélula Books
Client project | Children's publishing | Multilingual website | Custom admin panel
A multilingual website and custom admin panel for an independent children's publisher. One Laravel application presents the Bella's World stories in seven languages, connects the audiobook and video book shop, and lets the team manage content without a developer.
Built for: An independent children's publisher reaching families, schools and organisations in several languages.
- Laravel
- PHP
- React and TypeScript
- Inertia
- TanStack Query
- Alpine.js
- Tailwind CSS
- MySQL
The problem
A multilingual publisher has content that multiplies. Each page, character, review, award and legal document has to exist in every language, and the books themselves are sold through a separate store. The website needed to hold all of that together and stay in the hands of a small team.
What we did
Six-page public website in seven languages · Custom admin panel and content management · Translation and language management
The outcome
The completed platform gives Libélula Books one place to run its website, its languages and the route to its store, with day-to-day changes in the team's own hands.
Project overview
Libélula Books is an independent children's publisher and the home of Bella's World, a series of illustrated audiobooks and video books that introduce children to new languages and cultures.
Our contribution: Website, custom admin panel, multilingual content management, shop integration and the Bella guide, built in Laravel and React, 2026.
Goals
- Bring the website, content and shop together in one application
- Present every page in the languages the books are published in
- Let the team update text, images and audio without a developer
- Connect the existing FlickRocket store to a shop that feels part of the site
Scope and deliverables
- Six-page public website in seven languages
- Custom admin panel and content management
- Translation and language management
- Audiobook and video book shop with a basket
- Bella, an interactive on-page guide
- Contact inbox with acknowledgement emails
The challenge
A multilingual publisher has content that multiplies. Each page, character, review, award and legal document has to exist in every language, and the books themselves are sold through a separate store. The website needed to hold all of that together and stay in the hands of a small team.
- Every text had to be translatable, with gaps easy to spot
- Books are sold through FlickRocket, so the shop had to stay in step with its catalogue
- Large images, audio and video had to upload reliably on shared hosting
- Schools and organisations needed a different route to the team from families
- The content and data of an earlier system had to carry over unchanged
Our approach and strategy
Blocvibe rebuilt the earlier system as one Laravel application. It keeps the existing database structure, so content moved across intact, and adds a public website and a custom admin panel on top of it.
- Content modelPages are structured documents, and their words live in a translation table with one entry per language.
- WebsiteHome, Bella's World, Our Artists, Shop, Contact and the basket, each available under its own language address.
- Admin panelA React panel where the team edits each section of each page, with its text and media per language.
- ShopProducts, prices and checkout come from FlickRocket, with covers, flags, samples and previews managed in the admin panel.
Design and user experience
The design is built around the Bella's World illustrations: warm colour, soft cloud shapes and a serif headline style that suits a storybook, on layouts that adapt from desktop to phone.
- Illustrated page banners, sound buttons and a character gallery
- A language switcher on every page, with each language at its own address
- A mobile menu and single-column layouts on phones
- Bella reduces her movement for visitors who prefer less motion
Technology stack
Application
- Laravel
- The website, JSON API, admin sign-in and email.
- PHP
- The server-side language.
Interface
- React and TypeScript
- The admin panel.
- Inertia
- Connects the React admin panel to Laravel.
- TanStack Query
- Loads and saves admin data.
- Alpine.js
- The basket, forms, audio players and Bella on the public pages.
- Tailwind CSS
- Styling across the site and admin panel.
Data
- MySQL
- Pages, translations, characters, products and messages.
Third-party integrations
- FlickRocket
- Supplies the product catalogue and prices through its SOAP API and storefront, and handles checkout.
- VdoCipher
- Plays protected video book previews, using short-lived playback codes issued by the server.
- Brevo
- Sends contact acknowledgements and admin account emails through its transactional email API.
- jsVectorMap
- Draws the world map on the Our Artists page, with numbered places that can be focused and tapped.
Challenges and solutions
Challenge
Keeping seven languages complete.
Solution
Texts are stored by key and language. The admin panel shows the progress of each language, and a missing text falls back to UK English.
Challenge
Uploading large files on shared hosting.
Solution
Files over 1.5 MB are sent in pieces and rebuilt on the server, so images, audio samples and video previews fit within the usual PHP upload limit.
Challenge
A slow store must not slow the shop.
Solution
The last good catalogue is served at once and refreshed in the background, and a failed connection is not retried for a minute.
Challenge
Protecting video previews.
Solution
The VdoCipher secret stays on the server. The browser receives only a playback code valid for five minutes.
Challenge
A message must not be lost if email fails.
Solution
Each message is saved before its acknowledgement is attempted, the email status is recorded, and the team can resend it from the inbox.
Product showcase
01 / 11The same page in its responsive mobile layout
End to end
How a Blocvibe project is delivered
The stages we use to run custom software projects. The detail of each one depends on the project.
What was delivered
The completed platform gives Libélula Books one place to run its website, its languages and the route to its store, with day-to-day changes in the team's own hands.
- Six public pages in seven languages
- Audiobook editions presented in all seven languages
- A shop and basket connected to FlickRocket checkout
- Separate contact routes for organisations and families
- Legal pages with drafts, preview and publishing per language
Key takeaways
What it shows
- A content model designed for many languages from the start
- A third-party store that feels like part of the website
- Admin tools that let a small team run a multilingual site
Related services
- Custom Software Development
Software built around your processes instead of forcing your team into someone else’s.
- Web Application Development
Fast, accessible web apps and portals that work in any modern browser.
Have a Similar Project in Mind?
Let’s turn your idea into a powerful digital solution.

