Réfugiés.info is a government platform run by the French Ministry of the Interior that helps thousands of refugees and asylum seekers access reliable information about their rights and administrative procedures — in 8 languages. I led its migration to the French State Design System (DSFR) and RGAA accessibility compliance, as the sole near-full-time developer on a minimal team.
The Context
Réfugiés.info is a public digital service built within the Beta.gouv ecosystem — France's government startup incubator. The platform serves a critical mission: making essential information accessible to some of the most vulnerable populations.
When I joined the team, the product was functional but carrying significant technical debt: heterogeneous components, no structured accessibility approach, and an in-house design system that coexisted uneasily with the DSFR (France's official state design system).
The team was small: a CTO at half-time, a rotating cast of product owners, and me as the only developer at near-full-time capacity.
My Role
Designer, front-end developer, and accessibility lead, working across the entire chain:
- DSFR Migration — Progressive integration of the French State Design System, component by component, without blocking production
- RGAA Accessibility — Created a dedicated backlog, manual testing (keyboard navigation, VoiceOver, NVDA), coordination with the Beta.gouv accessibility team
- Front-end Modernization — Introduced Tailwind CSS with DSFR token mapping, reducing legacy SCSS debt
- Search Redesign — Designed and developed a multi-criteria search system (Algolia + MongoDB)
- Component Architecture — Restructured the codebase for better reusability and maintainability
Currently in progress: designing a generative AI editorial pipeline for rewriting and simplifying information sheets across 8 languages. 👉 Follow the progress in the build-in-public journal
The Method
One simple rule guided the entire project:
Every time we touch a page, it comes out more accessible than before.
No big-bang redesign. No isolated accessibility sprint. Every product ticket became an opportunity for improvement. The DSFR migration and RGAA compliance work advanced in parallel — each migrated component gained both coherence and inclusion.
The Beta.gouv accessibility team provided crucial support: onboarding, advice, and a surprise mid-project audit that helped us reprioritize and validate our approach. Accessibility shifted from a "project to complete" to a daily development reflex.
Results
- Fluid keyboard navigation across all critical user journeys
- DSFR stabilized — core components migrated and harmonized
- Tailwind + DSFR integrated via a custom token mapping tool
- Front-end debt significantly reduced — more maintainable and predictable codebase
- Accessibility became a team reflex, not a one-off project
Key Takeaways
This project proves that a small team can meaningfully improve a public product without a total redesign. Accessibility isn't a sprint — it's a way of working. And the DSFR isn't a constraint: it's an accelerator.
👉 Read the full technical deep-dive on DSFR migration and RGAA accessibility
Stack & Tools
React, Next.js, TypeScript, Tailwind CSS, DSFR, Algolia, MongoDB, Storybook, VoiceOver, NVDA, Axe, Pa11y