An online store for Russian-language e-books and audiobooks
knigopoisk.com (КнигоПоиск, roughly "book search") is an online e-book and audiobook store for Russian-speaking readers. The storefront advertises more than 11,000 books across dozens of genres, from science fiction and detective fiction to business books and classics, with sections for audiobooks, free books, curated selections, authors, reviews and a blog. Readers buy and download books or read them in the browser, get free books for writing reviews, and can invite friends to a referral book club.
We have worked on the platform since March 2024, covering the Laravel backend and admin panel, the Nuxt storefront, payments, digital delivery and the tooling around the store.
Key features
- E-book and audiobook catalog — genre, author and curated selection pages, separate buy and free-download pages per title, and a dedicated free-books section.
- In-browser reader and player — foliate-js and pdf.js open whichever file format reads best, including on older browsers, and vue-plyr plays audiobook chapters and previews.
- Reader cabinet — library, bookmarks, orders, reviews and newsletter settings in one place; purchased audiobooks download chapter by chapter or as a single ZIP.
- Multi-currency checkout — buyers switch between USD, EUR and RUB, prices recalculate, and only providers that support the chosen currency are offered.
- Payment integrations with fallback — Stripe and Polar for cards, YooKassa, Robokassa and T-Bank for rubles, NOWPayments and Cryptomus for crypto, plus legacy WayForPay. If the default provider is disabled, the next enabled one takes over.
- Rescued checkouts — when a buyer's region has no available payment method, the attempt is saved as a lead and staff get what they need to finish the sale manually.
- Reviews and rewards — ratings exposed as structured data, a free-book-for-review program and a referral book club.
- AI-narrated audiobooks — a text-to-speech pipeline turns digital editions into audiobooks and starts automatically when someone buys an audiobook that has no file yet (see AI audiobook generation).
- Partner widget — a one-tag JavaScript widget that sells Knigopoisk books on third-party book sites with partner attribution (see the partner widget).
Architecture and tech stack
Backend and admin panel
The backend is a Laravel 12 application on PHP 8.4, served by Laravel Octane, with MySQL, Redis and a REST API documented with Scramble. The back office runs on Filament 4 and is fully localized into Russian: 48 resources, 68 relation managers and roughly 300 table columns, with every filter, empty state and modal translated. A regression test fails if a column ships without a label. The suite runs 171 tests and 898 assertions, in parallel.
In 2026 we restructured the catalog into a Book → Edition → Product model through phased migrations: a new data layer with backfill, an ownership cutover, a public API re-sourced over products, and finally a new catalog console in the admin. One work can now carry several editions and formats without duplicated records.
The admin panel also includes an AI assistant: a tool-calling agent on DeepSeek with tools for orders, products, content, media, users and statistics. When the model proposes an action that needs human sign-off, the run pauses, the proposal is recorded, and the agent resumes only after an admin approves or rejects it, which leaves an audit trail of what was proposed and what was done.
Storefront
The storefront started on Nuxt 3 and moved to Nuxt 4 in 2026. It uses Vue 3, Pinia with persisted state, Element Plus and Bulma, VeeValidate with Yup, and TypeScript types generated from the backend's OpenAPI spec. Open Graph images are rendered on the server with Satori and resvg, without a headless browser. PostHog and Yandex Metrika handle analytics.
Infrastructure and operations
Both apps ship as Docker images deployed through Coolify, with separate development and production stacks. Scheduled jobs refresh exchange rates every 15 minutes, regenerate the sitemap daily, build a Google Merchant feed nightly, expire abandoned checkouts and clean up audiobook render files. Order events, failures and daily and monthly digests reach the team through Telegram order alerts.
SEO and performance
The storefront renders on the server and uses the Nuxt SEO module set for sitemaps, robots rules, schema.org data and generated Open Graph images, with the cart, reader cabinet and order pages kept out of indexing and OG rendering. The backend generates the sitemap from the catalog and a product feed for Google Merchant Center.
Current work follows a technical SEO plan with two hard rules: no URL changes and nothing de-indexed. It covers fuller Book, Audiobook and Product structured data, ItemList and breadcrumb markup on listings, VideoObject markup for books with a curated video, distinct search intent for buy and free-download pages, and server-rendering more of each book page.
Our role
We have developed Knigopoisk's platform since 2024: backend, admin panel, storefront, payments, digital delivery and infrastructure, plus the tools around the store, including the large-print book pipeline. The work is ongoing.
Related work
Knigopoisk combines our e-commerce development, web app development and AI integration and automation work. Related case studies: AI audiobook generation and large-print pipeline.



