---
title: "Describe — 80 000 livres gratuits à lire en streaming"
description: "Describe, de Dealmood & Solutions LTD (Londres) : près de 80 000 livres du domaine public à lire en streaming, sur le web, Android et iOS, avec lecture…"
url: https://dealmood-solutions.com/produits/describe
lang: fr
alternates:
  en: https://dealmood-solutions.com/en/products/describe
  de: https://dealmood-solutions.com/de/produkte/describe
  it: https://dealmood-solutions.com/it/prodotti/describe
---

Lecture numérique · Web · Android · iOS

V1.0Sortie le 22 septembre 2027· Automne 2027

# Describe

Près de 80 000 livres gratuits, à lire en streaming.

Describe ouvre la bibliothèque du domaine public du Project Gutenberg : romans, poésie, philosophie, sciences, en français, en anglais et dans des dizaines d'autres langues. On ouvre un livre et on le lit page par page, sans rien télécharger, sur le web, Android et iOS ; la lecture reprend là où on l'a laissée, sur tous ses appareils.

[Voir l'application](https://dealmood-solutions.com/produits/describe#captures) · [Voir l'architecture](https://dealmood-solutions.com/produits/describe#architecture)

Gratuit · Web, Android et iOS · Lecture synchronisée

Captures réelles de l'application

Le concept

## Une bibliothèque entière, dans la poche

Les grands textes du domaine public sont libres, mais souvent mal présentés. Describe les rassemble dans une seule application soignée, rapide et agréable à lire.

### Un catalogue immense

Près de 80 000 œuvres du domaine public, mises à jour chaque jour depuis le catalogue officiel du Project Gutenberg.

### Lecture en streaming

Rien à télécharger : seule la page affichée arrive, la suivante est déjà préchargée.

### On reprend où on s'est arrêté

Sans compte, la lecture reste sur l'appareil ; avec un compte, elle se synchronise entre le web, Android et iOS.

En images

## L'application, telle qu'elle est

Le catalogue complet

La fiche d'un livre

Le lecteur

Thème sépia et réglages

La table des matières

Ma bibliothèque

La recherche

Les rayons de l'accueil

- Accueil
- Recherche
- Fiche livre
- Lecture

## Pensé pour lire longtemps, sans fatigue

Plein écran, typographie de lecture longue, pages qui tournent en 3D autour de la reliure sur mobile : le livre reste au centre, l'interface s'efface.

- Trois ambiancesClair, sépia ou nuit ; texte de 14 à 32 pixels, police à empattements (Literata) ou sans.
- Pages qui tournentSur mobile, la page tourne en 3D autour de la reliure, comme un vrai livre.
- Table des matièresChaque chapitre ouvre une nouvelle page ; on saute d'un chapitre à l'autre en un geste.
- Au clavier aussiFlèches gauche et droite pour tourner les pages ; la position est sauvegardée automatiquement.

Fonctionnalités

## Trouver, lire, et reprendre où l'on s'était arrêté

Recherche instantanée

Plusieurs mots, sans se soucier des accents, sur tout le catalogue.

Langues et thèmes

Sept langues de lecture et dix thèmes (romans, poésie, théâtre, policier…) ; l'état du catalogue reste dans l'adresse, facile à partager.

Fiches détaillées

Auteurs, sujets, résumé et nombre de lectures récentes, pour choisir avant d'ouvrir.

Les livres commencés y entrent tout seuls, avec la page où l'on s'est arrêté et ses statistiques de lecture.

Compte facultatif

On lit sans compte ; on en crée un pour retrouver sa bibliothèque partout.

Applications natives

Android et iOS partagent tout leur code avec Kotlin Multiplatform.

Rotonde en 3D

L'accueil du site est une bibliothèque en Three.js que l'on traverse en faisant défiler.

Rapide

Catalogue local, pages mises en cache, préchargement de la page suivante.

Technologies et architecture

## Sous le capot de Describe

Une API Kotlin (Ktor) en architecture hexagonale garantie par le compilateur : chaque couche est un module Gradle distinct, et le domaine ne peut importer ni Ktor, ni la base, ni un client HTTP. Le contrat d'API est un module Kotlin Multiplatform partagé par le serveur et les applications Android et iOS.

Schéma d'architecture · Cœur du produitFlux de données

1. 01
   Applications
   - WebAngular, Tailwind CSS 4, rotonde de bibliothèque en Three.js pilotée par GSAP
   - Android + iOSKotlin Multiplatform et Compose Multiplatform, tout le code partagé
   - coreContrat d'API Kotlin compilé pour le serveur et le mobile
2. 02
   API Describe
   Ktor · /api/v1
   - Présentation HTTPRoutes, JWT, erreurs, racine de composition
   - ApplicationCatalogue, lecture, comptes, bibliothèque, synchronisation
   - DomaineModèles, ports, découpage en pages, sans dépendance technique
3. 03
   Infrastructure
   - PostgreSQL / H2Catalogue local, comptes, bibliothèques, reprise de lecture
   - Project GutenbergCSV quotidien (78 000 livres en ~25 s) et textes, mis en cache
   - GutendexRésumés et popularité, en tâche de fond

### Le trajet d'une page lue

1. 1 · Le lecteur demande /books/{id}/manifest : nombre de pages et table des matières.
2. 2 · Il charge la page affichée par /books/{id}/pages/{n} et précharge la suivante.
3. 3 · Au premier accès, le serveur télécharge le texte sur Gutenberg une seule fois et le garde en cache sur disque.
4. 4 · Le texte est découpé en pages d'environ 2 500 caractères ; chaque chapitre ouvre une nouvelle page.
5. 5 · La position est sauvegardée : sur l'appareil pour un visiteur, sur le serveur pour un compte connecté.

### Les choix d'architecture

- Hexagonale, vérifiée par le compilateurUne couche par module Gradle : importer Ktor ou la base dans le domaine fait échouer le build.
- Un catalogue localGutendex répondait en 40 à 70 s : le catalogue officiel est importé et resynchronisé chaque jour, la recherche est locale et instantanée.
- Streaming paginéSeule la page affichée voyage ; les pages sont mises en cache par le navigateur, le texte brut est servi par plages d'octets.
- Sécurité par constructionMots de passe BCrypt, JWT signé, adresses Gutenberg construites depuis l'identifiant (pas de SSRF), taille des textes plafonnée.

### Toutes les technologies, par famille

Backend

- Kotlin 2.4
- Ktor 3.6 (Netty)
- Exposed 1.6
- Flyway 13
- HikariCP 7
- kotlinx.serialization
- Coroutines
- JVM 21

Front-end

- Angular 22
- TypeScript 6
- Tailwind CSS 4.3
- GSAP 3.15 + ScrollTrigger
- Three.js
- Signals
- Zoneless

Mobile

- Kotlin Multiplatform
- Compose Multiplatform 1.12
- Material 3
- Ktor Client
- Coil 3
- Android
- iOS

Données et stockage

- PostgreSQL 17
- H2
- Cache disque des textes
- Cache LRU des pages

Paiements et services tiers

- Project Gutenberg
- Gutendex
- Apache Commons CSV

Authentification et sécurité

- BCrypt
- JWT (HS256)
- Protection SSRF
- CORS

Qualité et outils

- JUnit / kotlin-test
- Ktor test host
- Vitest
- Prettier
- Pyramide de tests

DevOps et CI/CD

- Docker
- Docker Compose
- Nginx
- Gradle 9

Supervision

- /api/v1/health
- Docker healthchecks
- Logback

Inventaire relevé dans le code source et la configuration du produit.

Questions fréquentes

## Tout savoir sur Describe

Oui. Les livres proviennent du Project Gutenberg et sont dans le domaine public ; on les lit librement, sans abonnement.

## Une application de lecture pour vos lecteurs ?

Bibliothèque, éditeur, école ou média : Describe montre ce que notre équipe sait faire avec un catalogue, du streaming de contenu et des applications multiplateformes. Parlez-nous de votre projet.

[Parler de mon projet](https://dealmood-solutions.com/contact) · [Retour aux produits](https://dealmood-solutions.com/produits)
