Éditeur web de feuilles Bristol (format A5, 148×210 mm) avec zones d'écriture repositionnables, mise en forme riche et impression navigateur.
- Zones d'écriture sur lignes Bristol (double-clic ou Entrée pour créer)
- Déplacement et redimensionnement des zones
- Formatage : gras, italique, souligné, code, listes, couleurs, surlignage
- Multi-feuilles (jusqu'à 30) avec overflow automatique vers la feuille suivante
- Zoom : Ctrl/Cmd + molette
- Impression via le navigateur (
window.print())
vp install # dépendances
vp dev # serveur de développement
vp test # tests unitaires
vp build # build production
npm run check # vérification TypeScript (svelte-check)
npm run lint # Prettier + ESLint
npm run formatSheetData:{ id: string, zones: WriteZone[] }WriteZone:{ id, lineIndex, leftCm, widthCm, lineCount, content }(HTML sanitisé)
bristol/ # dimensions et lignes du papier
sheet/ # gestion multi-feuilles (workbook)
zone/ # géométrie, placement, interaction des zones
overflow/ # débordement texte inter-feuilles
editor/ # HTML, couleurs, formatage, sanitisation
viewport/ # zoom pan
state/ # feuille active, clavier centralisé
components/
bristol/ # BristolSheet, WriteZone
format/ # SelectionFormatPill, IconStack
ui/ # shadcn (Button)
- Pas de persistance : un rechargement efface le contenu
- Maximum 30 feuilles par document
- Impression dépend du moteur du navigateur
Svelte 5 (runes), SvelteKit, Tailwind v4, shadcn-svelte, Vitest, adapter-static
Projet privé — usage personnel.