Plumobox
Designed and built a free platform of learning mini-apps for French primary schools, from the last year of kindergarten to the end of primary school. It runs in the browser with no account, no cookie and no tracker, and works offline on a classroom tablet. Solo project, from the pedagogical scope to the reverse proxy.
Free, and free of everything else
Primary teachers work with tablets that lose the network in the middle of a lesson, with pupils who cannot be asked to create an account, and under a data protection framework that turns any personal data on a minor into a legal project of its own. PlumoBox answers all three by removing them: no account, no cookie, no third-party tracker, no personal data of any kind. Compliance here is not a consent banner, it is an absence. A pupil opens the URL and starts.
More than 120 activities, one filterable catalogue
The platform covers maths, French, science, history and geography, civics and logic, from the last year of kindergarten to the end of primary school, roughly ages 5 to 13. Each activity is a self-contained mini-app with its own manifest, its own translations and its own tests, published in six languages: French, English, Spanish, Italian, German, Portuguese. Every skill it exercises is traceable to a line of the official French curriculum. The Bulletin Officiel is the source of truth, not a claim made about it.
Accessibility as a starting constraint
WCAG 2.2 AA is the floor and AAA the target on every instruction, because the pupils who need this platform most are the ones the standard exists for: dyslexic readers, autistic pupils, pupils who are hard of hearing. Touch targets never drop below 44 px, keyboard navigation is complete, and sound is muted by default and never the only channel carrying meaning. Reading aloud runs on a self-hosted neural voice, ONNX in the browser through WebAssembly, so a six-year-old who cannot read yet can hear an instruction without a single request leaving the machine.
No score, no ranking
Gamified education carries a well documented cost: a pupil who is behind reads their rank before they read the exercise. PlumoBox has no numeric score, no leaderboard, no badge to collect. What it keeps is the trace of the work, printable notebooks, galleries of what a pupil actually produced, personal records stored locally and opt-in, color belts on the mental arithmetic track. Progress is measured against yesterday, never against the pupil at the next desk.
Built to be installed, not just visited
Next.js 16 and React 19 on the front, Postgres and Drizzle behind, Docker and Caddy in production, hosted in France. The architecture holds one hard rule: every mini-app is fully client-side once loaded, so the whole catalogue runs offline as an installable PWA and can be packaged as a native tablet app without a rewrite. The code is open source under Apache 2.0. Around five hundred commits, one pair of hands, from the pedagogical scope to the reverse proxy.