French administrative appointments are a nightmare: prefectures release appointment slots at random times, and they vanish in minutes. Titre de séjour, passeport, driving licence medical commission... people refresh pages for weeks.
The problem
Prefecture booking systems are old web forms with no notification feature. Slots appear at 8am or 7pm, gone in 10 minutes. For a driving licence medical commission (a mandatory visit for many drivers), waiting months is normal.
The solution
Perfecture.fr polls prefecture booking pages continuously and sends an alert the moment a slot opens. Stack: Next.js for the frontend, Python workers for the polling, Supabase for storage, Redis for queues.
Lessons learned
- Slot release patterns are predictable: morning and evening peaks (10h00 and 18h00 see most releases).
- Alert latency matters more than coverage: users checking a 7h20 slot found it gone by 7h30.
- Batch size tuning (20 → 5) made watched campaigns much more responsive.
It's in beta and free: perfecture.fr. If you've ever fought with a French administrative booking system, you know why this exists.
Top comments (0)