# Workomp

> Une app iOS de motivation sportive, avec une mascotte qui grandit à chaque séance tenue.

- Statut : livré (2026)
- Rôle : Conception, design et développement
- Stack : React Native, Expo, TypeScript, Fastify, Prisma, PostgreSQL, SwiftUI
- App Store : https://apps.apple.com/fr/app/workomp-compagnon-sportif/id6812890258
- Site : https://workomp.app
- Page : https://davidcalonne.fr/fr/projects/workomp
- Auteur : David Calonne (https://davidcalonne.fr/fr)

Workomp motive à faire son sport avec une mascotte virtuelle : elle grandit à chaque séance honorée, et le montre quand on la laisse tomber. L'app est disponible sur l'App Store depuis octobre 2026.

## Ce que fait l'app

- **Une mascotte** qui évolue sur 10 stades, avec ses états de forme, son humeur, ses couleurs et ses cosmétiques.
- **Un plan d'entraînement** : jours de séance, calendrier, séance préparée à l'avance et validée le jour même, chrono et minuteur de repos.
- **Plus de 330 exercices**, avec séries, charges, distances et records.
- **La progression** : XP, niveaux, séries, défis de la semaine et trophées.
- **iOS** : widgets sur l'écran d'accueil et l'écran verrouillé, Apple Santé, notifications.

## Côté technique

Un monorepo avec l'app Expo (React Native, TypeScript), une API Fastify et Prisma sur PostgreSQL, et des widgets natifs en SwiftUI. Les règles de jeu vivent dans un module pur, couvert à 100 % par des tests, et les échanges entre l'app et l'API passent par des contrats zod partagés. L'app fonctionne hors ligne et en 5 langues.
