Application mobile en React Native pour le projet du module P61 Développement avancé.
Un tracker d'habitudes pour performer au boulot et dans la vie de tous les jours.
- Sujet + Cahier des charges
- Modèle Logique des Données (MLD)
- Conventions développement informatique
- Kanban Board (Trello)
- TypeScript: Langage de programmation.
- React Native + Expo: Framework pour le développement d'applications mobiles.
- React Native Paper: Bibliothèque de composants pour React Native.
- React Hook Form + Zod: Gestion des formulaires et validation des données.
- Supabase: Backend, serveur d'API pour le stockage des données.
- Node.js >= 20.0.0
- npm >= 10.0.0
- Expo Go ~2.31.0
- Docker (facultatif, utilisé pour lancer Supabase en local)
# Cloner le projet
git clone git@github.com:theoludwig/p61-project.git
# Se déplacer dans le répertoire du projet
cd p61-project
# Configurer les variables d'environnement
cp .env.example .env
# Installer les dépendances
npm clean-install
npm run start
Ce n'est pas strictement nécessaire pour le développement de l'application (même si recommandé), de lancer Supabase en local, car l'application est déjà déployée sur un serveur Supabase en production (.env.example
est pré-configuré avec cet environnement).
npm run supabase-cli start
# Pour réinitialiser la base de données avec les données de test (seed.sql)
npm run supabase-cli db reset
# Pour synchroniser le modèle (local) avec la base de données (remote)
npm run supabase-cli db pull
# Pour synchroniser la base de données (remote) avec le modèle (local)
npm run supabase-cli db push
# Pour générer les types TypeScript
npm run supabase-cli gen types typescript -- --local > ./infrastructure/supabase/supabase-types.ts
# Crée un nouveau script de migration à partir des modifications déjà appliquées à votre base de données locale (remplacer `<name-of-migration>` avec le nom de la migration)
npm run supabase-cli db diff -- -f <name-of-migration>