Développement d'une application mobile permettant aux utilisateurs de créer des voyages géolocalisés, d'y associer un carnet de bord (journal avec photos et descriptions) et de centraliser toute la logistique du séjour (vols, locations de voiture, hébergements, autres réservations). L'application gère l'authentification des comptes, l'upload et le stockage des photos (avatar, couverture de voyage, souvenirs), ainsi que la localisation des destinations sur une carte.
- Création et gestion de voyages (destination, dates, géolocalisation, image de couverture)
- Carnet de voyage (diary) avec titres, descriptions et albums de photos par étape
- Planning de voyage détaillé : vols, locations de voiture, hébergements, autres événements (CRUD complet par type)
- Authentification par email/mot de passe (hash + salt, token applicatif) et gestion du profil (avatar, informations personnelles)
- Upload et stockage des médias (avatars, couvertures, photos de carnet) via Cloudinary
- Suppression en cascade des données liées (voyages, journaux, médias) à la suppression d'un compte
- Vue consolidée de toutes les photos d'un utilisateur, tous voyages confondus
- Navigation mobile par onglets, gestion d'état centralisée (Redux) avec persistance locale
Détails techniques
Frameworks & BibliothèquesReact Native + Expo (front mobile)React NavigationRedux Toolkit + Redux Persist (gestion d'état)Express.js (back)MongoosePassport (OAuth Google/Facebook)
Base de donnéesMongoDB (Mongoose) - modélisation par domaine (utilisateurs, voyages, journaux)
Architecture logicielleArchitecture MVC côté back (routes/modèles/middlewares)API REST par ressource (user, travel, diary, flight, car, accomodation, other)Middleware d'authentification par tokenInterface responsive, adaptée aux différentes tailles d'écran mobile
API & Services WebREST APIAuthentification par token applicatifOAuth Google/Facebook (Passport)
CloudCloudinary (stockage et gestion des images)MongoDB AtlasVercel (déploiement back)