Skip to content
  1. Our work
  2. ECP Companion

Case study · Citizen participation · Missions Publiques

The app behind a European citizens’ panel, in 24 languages, built by a nontechnical team.

From 17 to 20 September 2026, 150 citizens from all 27 member states met for the first session of the European citizens’ panel run under contract with the European Commission. Each of them took part in their own language through ECP Companion, an app built by the Missions Publiques team, whose expertise is citizen participation, not software. Over the three months before, we worked with Jean Baudroux and Antoine Vergne to strengthen its foundations, add new features and pass on a software development method.

By , founder of ClairAI. Published on , updated on .

24 languagestranslated in real time for 150 citizens from the 27 member states

  • 150European citizens supported by the app
  • 176pull requests reviewed and merged
  • 27 pointsraised by the full September audit, fixed one by one
  • 3 monthsfrom July to the first session in September

The problem

For the European citizens’ panel, the team had quickly built an app with an AI-assisted development tool: many features, citizens from 27 countries, facilitators, Commission experts, and a first session whose date could not move.

The challenge was not adding screens. Votes had to be counted correctly, everyone had to see only what concerned them, translations had to keep up, and the app had to hold when everyone logged in at once. The team also needed to be able to carry on alone, with good habits.

ClairAI led the audit, the architecture and the code fixes, reviewed Jean’s work and set up the team’s way of working. Jean kept building the panel features in parallel.

What we built

  1. First, strengthen the foundations

    In July, a first audit and seventeen consolidation tickets: vote security, timeouts on external services, performance of the document assistant. The app goes live on ecpcompanion.eu.

  2. Then, new features

    Once the foundations were solid, new features were added without weakening what already worked: translated direct messaging between facilitators and participants, moderation, an admin console, notifications, then a full accessibility cycle, audited and fixed.

  3. A method, and code review as training

    One Linear ticket, one branch, one pull request, prioritised with the team around the next session. Every pull request from Jean is reviewed and each comment explained. Decisions, checks and the design system are documented in the repository.

  4. Testing in real conditions

    In early September, a full audit raised twenty-seven points, fixed in small pull requests. Continuous integration, error monitoring, regression tests. Before the session, every user profile was replayed with test accounts and simultaneous connections on chat, votes and translations.

ECP Companion sign-in screen: logo, “European citizens’ panel” subtitle, username and password fields, language selector.
On desktop. The sign-in screen, here in French: each participant picks their language from the app’s 24.
ECP Companion sign-in screen on a phone.
On mobile. The same screen on mobile. The rest of the app is restricted to panel participants and staff.

The result

The panel’s first session took place from 17 to 20 September 2026 on a strengthened app: role-based access, reliable votes, translated messaging between facilitators and participants, audited and fixed accessibility, mobile use.

The Missions Publiques team keeps the method: tickets, reviewed pull requests, tests and checks after every release. It continues to develop the app itself.

Figures taken from the ECP Companion repository history, July to September 2026. The app is restricted to panel participants and staff.

« The panel’s first session went very well, and his support clearly contributed to that. We come out of it with a stronger app, better working methods and more confidence to keep developing it. »

Jean Baudroux, Missions Publiques, on ClairAI’s support

A result like this in your company?

Tell us about the task that costs you the most time. In 20 minutes, we will see whether a measurable result is realistic.