# Réfugiés.info: Keeping a Public Service Moving Without Ever Stopping It

> DSFR, RGAA, 8 languages — how I led the accessibility and design system migration of a French government platform with a two-person dev team at Beta.gouv.

**Published:** 2024-12-15
**Author:** Jérémie Gisserot
**Language:** en
**Canonical URL:** https://jeremie-gisserot.net/en/case-studies/refugies

---

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](/build-in-public)**

---

## 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](/accessibility-design-systems/refugies-info-accessibility-dsfr)**

---

## Stack & Tools

React, Next.js, TypeScript, Tailwind CSS, DSFR, Algolia, MongoDB, Storybook, VoiceOver, NVDA, Axe, Pa11y