BEN/
Retour aux projets / Locat Mobile
Mobile · 2025Créateur & Fondateur

Locat Mobile

Application mobile complète de gestion locative pour la Côte d'Ivoire. Solution moderne pour révolutionner la gestion immobilière avec gérants et locataires.

Hero — Locat Mobile
(01)À propos du projet

Locat Mobile est une application React Native (Expo) que j'ai créée et fondée pour digitaliser la gestion locative en Côte d'Ivoire. La plateforme connecte gérants immobiliers et locataires dans une solution complète : gestion de structures/logements/contrats, validation de paiements Mobile Money, génération automatique de quittances PDF, rappels automatisés et module de commissions. L'application remplace le travail de l'agent immobilier traditionnel (7-12% par loyer) en automatisant la gestion pour seulement 3-5% de commission.

(02)Fonctionnalités principales
  • Interface Locataire complète : Tableau de bord avec statut loyer temps réel (à jour/retard/avance), paiement multi-mois Mobile Money, historique avec téléchargement quittances PDF
  • Interface Gérant complète : Dashboard avec stats temps réel, gestion CRUD structures/logements/locataires, validation paiements avec génération quittances PDF
  • Système multi-rôles : Séparation complète Locataire/Gérant avec navigation adaptée (Bottom Tabs vs Drawer personnalisé)
  • Module commission intelligent : Période d'essai 3 mois gratuits, calcul automatique commissions 3-5% sur loyers validés, récapitulatif mensuel, KPIs temps réel
  • Système d'invitations : Vérification doublon, acceptation/refus en temps réel, liaison automatique locataire-logement, notifications push
  • Architecture multi-gestionnaire : Historique préservé par gestionnaire, timeline unifiée avec événements (nouveau bail, résiliation), statut actif/ancien
  • Génération rapports PDF : Modèle Portée × Période (Structure/Locataire × Mensuel/Annuel), occupation en temps réel, export/impression
  • Notifications realtime : Supabase Realtime, push notifications (paiement reçu, validé, refusé, fin d'essai J-15/J-7/J-1)
  • Authentification flexible : Connexion email OU numéro téléphone, normalisation automatique, réinitialisation mot de passe via deep link
  • Cache intelligent : TTL adaptatif (60s Home, 120s History, 5min Profile), refresh silencieux au focus, pull-to-refresh force reload
  • Gestion paiements manuels : Flux validation admin (pas d'auto-validate), statuts en_attente/valide/refusé, calcul FIFO mois impayés
  • RLS anti-récursion : 4 fonctions SECURITY DEFINER pour briser les cycles de dépendances entre tables
  • Blocages intelligents : FAB et invitations bloqués si 2+ mois commission impayés, banners contextuels dashboard (J-15 essai, commission due)
  • Paramètres agence PDF : Nom, adresse, téléphone, RCCM, en-tête/pied de page personnalisés, cachet optionnel
(03)Défis techniques relevés
  • Architecture multi-gestionnaire complexe : Séparation historique par gestionnaire, plusieurs enregistrements locataires par user, préservation données sans corruption
  • RLS anti-récursion PostgreSQL : Implémentation de 4 fonctions SECURITY DEFINER pour briser les cycles de dépendances entre tables liées
  • Modèle de commission innovant : Calcul automatique 3-5% sur loyers validés, période d'essai 3 mois, throttle sync 1h, blocages intelligents
  • Système de notifications multi-canal : Push native + in-app + realtime Supabase, coordonnées sur accept/refuse/validate/trial-ending
  • Cache multi-niveaux : In-memory avec TTL adaptatif, invalidation pattern-based, refresh silencieux vs force reload, coordination entre hooks
  • Gestion paiements FIFO : Calcul mois le plus ancien impayé, expansion multi-mois (mois_count), déduplication Refusé+Dû, timeline hybride
  • Module rapports PDF complexe : Modèle Portée × Période, 3 builders HTML distincts, agrégation client vs DB, paramètres agence dynamiques
  • Authentification par téléphone : Normalisation automatique (espaces/tirets), RPC SECURITY DEFINER bypass RLS anon, connexion email OU phone
  • Timeline unifiée : Tri hybride datePaiement DESC + moisKey DESC, intégration événements chronologiques, types hétérogènes (paiements/impayés/événements)
  • État locataire sans logement : Gestion gracieuse NULL locataireId, vues simplifiées, modal invitation enrichi, acceptation en temps réel
  • Deep links natifs : Reset password via locat://, nécessite EAS build (pas Expo Go), intégration URL Configuration Supabase
  • Expo SDK 55 migration : Push notifications ne fonctionnent pas dans Expo Go, tests uniquement sur APK EAS, expo-device pour détection émulateur
(04)Statistiques
8
Migrations SQL
15+
Tables DB
7
Vues DB
12+
Fonctions RPC
40+
Écrans
15+
Hooks personnalisés
10
Services
2
Rôles utilisateur
(05)Galerie
(06)Et maintenant

Intéressé par ce projet ?