simpl-liste/masterplan.md
le king fu f8523b8a6c docs: add CLAUDE.md and masterplan for project reference
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 21:50:45 -05:00

4.5 KiB

Simpl-Liste — Masterplan

Vision

Application mobile de gestion de tâches minimaliste, rapide et hors-ligne. Pas de compte requis, pas de cloud. Les données restent sur l'appareil.

Développée par La Compagnie Maximus.


État actuel (v1.0)

Fonctionnalités livrées

Catégorie Détail
Tâches Création, édition, suppression, toggle complétion (haptic), notes, priorité 4 niveaux
Sous-tâches Imbriquées via parentId, toggle indépendant
Listes Inbox permanent + listes custom avec couleur et icône (20 icônes Lucide)
Tags CRUD complet, assignation aux tâches, 7 couleurs prédéfinies
Récurrence Quotidien / hebdo / mensuel / annuel — auto-création de la prochaine occurrence
Tri Par position, priorité, date d'échéance, titre, date de création
Filtres Par statut, priorité, date d'échéance, tag
Notifications Rappels planifiés avec offset configurable (à l'heure, 1h, 3h, 1 jour avant)
Calendrier Sync optionnelle vers calendrier système (expo-calendar)
Export ICS Export .ics par liste ou tâche individuelle, avec RRULE
Thème Clair / Sombre / Système
Langues Français, Anglais (détection automatique)
Offline-first SQLite local, aucun réseau requis

Architecture technique

  • React Native 0.81 + Expo SDK 54 (New Architecture activée)
  • SQLite via Drizzle ORM (3 migrations appliquées)
  • Zustand pour l'état UI (thème, tri, filtres)
  • Expo Router (navigation file-based)
  • NativeWind (Tailwind CSS)

Phase 2 — Améliorations UX

Priorité : haute — Améliorer l'expérience quotidienne avant d'ajouter des fonctionnalités.

Drag & drop pour réordonner

  • Réorganiser les tâches dans une liste par glisser-déposer
  • Réorganiser les listes dans l'onglet Listes
  • Librairie : react-native-draggable-flatlist ou équivalent reanimated

Swipe actions

  • Swipe gauche → supprimer
  • Swipe droite → compléter
  • Remplace les boutons actuels (trash icon, toggle)

Recherche globale

  • Barre de recherche dans l'inbox ou en haut de l'app
  • Recherche par titre, notes, tags

Quick add amélioré

  • Parsing naturel de la date ("demain", "lundi prochain")
  • Assignation de liste/tag inline via syntaxe (#tag, /liste)

Widgets (Expo)

  • Widget iOS/Android affichant les tâches du jour
  • Widget compteur "X tâches restantes"

Phase 3 — Données & sync

Priorité : moyenne — Optionnel, l'app fonctionne en offline-first.

Backup / Restore

  • Export complet de la base SQLite (JSON ou fichier .db)
  • Import depuis backup
  • Pas de cloud — fichier local partageable

Sync entre appareils (optionnel)

  • Si implémenté : sync P2P ou via serveur auto-hébergé
  • Protocole : CRDTs ou simple merge basé sur timestamps
  • Le serveur serait sur l'infra VPS OVH / Coolify de La Compagnie Maximus

Phase 4 — Monétisation

Distribution

  • Android : Google Play Store (ou F-Droid pour la version libre)
  • iOS : Apple App Store
  • APK direct disponible sur le site lacompagniemaximus.com

Modèle

  • Gratuit — app complète sans restrictions
  • Revenus potentiels via version "Pro" avec :
    • Thèmes supplémentaires
    • Widgets avancés
    • Sync cloud (si Phase 3 implémentée)

Améliorations techniques à considérer

Item Détail
Remplacer le polling 500ms Utiliser les live queries de Drizzle/expo-sqlite ou un event bus interne
Tests Ajouter des tests unitaires (repository) et d'intégration (écrans)
i18n notifications Le channel Android hardcode du français — utiliser i18next
Accessibilité Labels accessibilité sur les boutons, rôles ARIA, taille de police dynamique
Performance Virtualiser les longues listes, memoize les composants coûteux
CI/CD EAS Build automatisé via GitHub Actions ou Forgejo CI

Infrastructure

L'app mobile est standalone — pas de backend requis.

Pour la distribution et les services annexes (site web, analytics) :

  • Site : lacompagniemaximus.com (Vercel)
  • Infra future : VPS OVH Canada + Coolify + Forgejo (voir masterplan La Compagnie Maximus)
  • Build : EAS Build (Expo Application Services)

Timeline indicative

Phase Statut
Phase 1 — MVP complet Livré
Phase 2 — UX polish 🔜 Prochaine étape
Phase 3 — Backup/Sync 📋 Planifié
Phase 4 — Distribution 📋 Planifié