docs: ROADMAP restructuré pour focus MVP + stratégie de branches Gitea
FlowDeck CI / test (push) Failing after 4s
FlowDeck CI / docker (push) Has been skipped

- ROADMAP.md: réorganisé avec priorités claires (v4.0.0=complété, v4.0.1=onboarding PRIO MAX)
- Ajout BRANCHING.md: convention main/develop/feat/*, workflow complet
- Branche develop créée et poussée sur Gitea
- Sections Parité Notion réparties en v4.1–v4.10 ordonnées par priorité
- Résumé des phases mis à jour
This commit is contained in:
2026-07-20 07:28:41 -04:00
parent c94dac2bbf
commit 47b0f80dfe
2 changed files with 241 additions and 179 deletions
+108
View File
@@ -0,0 +1,108 @@
# Stratégie de branches — FlowDeck
## Structure
```
main ──●────────────●────── production (tags vX.Y.Z)
\ /
develop ●──●──●──●────── intégration continue
\ \ \
feat/xxx ● ● ●──── feature branches
fix/xxx ●─────────── hotfix branches
```
## Branches
| Branche | Rôle | Déploiement | Protection |
|---------|------|-------------|------------|
| `main` | Production | Docker auto sur :8080 | Push direct interdit, PR only |
| `develop` | Intégration | Staging (optionnel) | Push direct interdit, PR only |
| `feat/<nom>` | Nouvelle feature | Aucun | Libre |
| `fix/<nom>` | Correctif urgent | Aucun | Libre |
## Workflow quotidien
### 1. Démarrer une feature
```bash
git checkout develop
git pull origin develop
git checkout -b feat/ma-feature
```
### 2. Travailler
```bash
# Coder, commit souvent
git add -A
git commit -m "feat: description claire de ce qui est fait"
git push origin feat/ma-feature
```
### 3. Créer une Pull Request
Aller sur https://git.dracodev.net/bruno/flowdeck/pulls
- **Base** : `develop`
- **Head** : `feat/ma-feature`
- Titre : descriptif
- Assigner un reviewer si applicable
### 4. Après merge
```bash
git checkout develop
git pull origin develop
git branch -d feat/ma-feature # supprimer la branche locale
```
## Release (develop → main)
```bash
# 1. S'assurer que develop est prêt
git checkout develop
git pull origin develop
# 2. Créer une PR develop → main sur Gitea
# (ou merger localement si admin)
git checkout main
git merge develop
git tag v4.0.1
git push origin main --tags
```
## Hotfix urgent
```bash
git checkout main
git checkout -b fix/urgence
# ... corriger ...
git commit -m "fix: description"
git push origin fix/urgence
# PR fix/urgence → main
# PUIS merger main → develop pour synchroniser
git checkout develop
git merge main
git push origin develop
```
## Conventions de commits
| Préfixe | Usage | Exemple |
|---------|-------|---------|
| `feat:` | Nouvelle fonctionnalité | `feat: landing page for visitors` |
| `fix:` | Correction de bug | `fix: redirect loop on /` |
| `refactor:` | Restructuration sans changement fonctionnel | `refactor: extract sidebar_data` |
| `test:` | Ajout/modification de tests | `test: onboarding flow e2e` |
| `docs:` | Documentation | `docs: update ROADMAP.md` |
| `style:` | Formatage, CSS | `style: mobile sidebar fixes` |
| `chore:` | Tâches de maintenance | `chore: bump version to 4.0.1` |
## Règles
1. **Jamais de push direct sur `main`** — toujours via PR depuis `develop` ou `fix/*`
2. **Jamais de push direct sur `develop`** — toujours via PR depuis `feat/*` ou `fix/*`
3. **Une branche = une feature / un fix** — éviter les branches fourre-tout
4. **Tests passent avant merge** — CI Gitea Actions doit être verte
5. **Commit + push après chaque modification significative**
6. **Nom de branche en kebab-case** : `feat/landing-page`, `fix/login-redirect`
7. **Supprimer la branche après merge** (sauf `main` et `develop`)
+133 -179
View File
@@ -1,7 +1,40 @@
# Roadmap FlowDeck — Notion Clone # Roadmap FlowDeck — Notion Clone
> **Vision**: Copie conforme de l'UI/UX Notion, intégrée à Gitea. > **Vision**: Copie conforme de l'UI/UX Notion, intégrée à Gitea/GitHub.
> **19 images de référence** dans `images/` — analysées le 2026-07-08. > **MVP en production** : v4.0.0 — authentification locale/OAuth, pages blocs, sidebar, library, share/publish, intégrations.
> **Branche principale** : `main` (production) · `develop` (intégration) · `feat/*` (features).
## 🏗️ Stratégie de branches
```
main ──●────────────●────── production (tags vX.Y.Z)
\ /
develop ●──●──●──●────── intégration continue
\ \ \
feat/xxx ● ● ●──── feature branches
```
- **`main`** : code en production, déploiement Docker automatique
- **`develop`** : branche d'intégration, merges des `feat/*`
- **`feat/<nom>`** : une branche par feature/fix, PR → code review → merge dans `develop`
- **Tags** `vX.Y.Z` sur `main` pour chaque release
**Workflow** :
```bash
git checkout -b feat/mon-truc develop
# ... coder, commit, push ...
# Créer une PR feat/mon-truc → develop sur Gitea
# Après review + CI verte → merge
# Pour release: PR develop → main + tag vX.Y.Z
```
**Règles** :
- Ne jamais commiter directement sur `main`
- Une branche = une feature / un fix
- Tests passent avant merge (CI Gitea Actions)
- Commit + push après chaque modification significative
---
## Completed ## Completed
@@ -54,13 +87,13 @@ Propriétés custom, AI keywords, sync API, 12 tables DB
- [x] Heading 4 support - [x] Heading 4 support
- [x] Breadcrumbs contextuels (workspace > projet > page) - [x] Breadcrumbs contextuels (workspace > projet > page)
### v1.3.0 ✅ — Database Concept (Bloc 1 du gap analysis) ### v1.3.0 ✅ — Database Concept
- [x] Tables `collections`, `collection_pages`, `collection_views` - [x] Tables `collections`, `collection_pages`, `collection_views`
- [x] Rétrocompatibilité Gitea via `GiteaBoardCompat` - [x] Rétrocompatibilité Gitea via `GiteaBoardCompat`
- [x] Router `/db` — API CRUD collections + pages (12 endpoints) - [x] Router `/db` — API CRUD collections + pages (12 endpoints)
- [x] 34/34 tests passent - [x] 34/34 tests passent
### v1.4.0 ✅ — Propriétés Avancées (Bloc 2) ### v1.4.0 ✅ — Propriétés Avancées
- [x] Table `collection_properties` — 21 types Notion - [x] Table `collection_properties` — 21 types Notion
- [x] Service `property_types.py` — validation, formatage, auto-values - [x] Service `property_types.py` — validation, formatage, auto-values
- [x] 38/38 tests passent - [x] 38/38 tests passent
@@ -72,7 +105,7 @@ Propriétés custom, AI keywords, sync API, 12 tables DB
- [x] Formula engine + Rollup engine - [x] Formula engine + Rollup engine
- [x] 43/43 tests passent - [x] 43/43 tests passent
### v1.6.0 ✅ — Vues Manquantes (Bloc 3) ### v1.6.0 ✅ — Vues Manquantes
- [x] Calendar, Gallery, List, Timeline, Table views - [x] Calendar, Gallery, List, Timeline, Table views
- [x] View tabs navigation - [x] View tabs navigation
- [x] 49/49 tests passent - [x] 49/49 tests passent
@@ -84,12 +117,12 @@ Propriétés custom, AI keywords, sync API, 12 tables DB
- [x] Status aggregate, Dependencies (blocking constraint) - [x] Status aggregate, Dependencies (blocking constraint)
- [x] 56/56 tests passent - [x] 56/56 tests passent
### v1.9.0 ✅ — My Tasks & Dashboard Unifié (Bloc 5) ### v1.9.0 ✅ — My Tasks & Dashboard Unifié
- [x] Vue `/my-tasks` — agrège pages assignées à l'utilisateur - [x] Vue `/my-tasks` — agrège pages assignées à l'utilisateur
- [x] Groupement par collection, filtres globaux - [x] Groupement par collection, filtres globaux
- [x] 60/60 tests passent - [x] 60/60 tests passent
### v2.0.0 ✅ — Éditeur Complet & Multi-Utilisateurs (Blocs 6-7) ### v2.0.0 ✅ — Éditeur Complet & Multi-Utilisateurs
- [x] Workspaces, Comments, Page History, Favorites - [x] Workspaces, Comments, Page History, Favorites
- [x] Database Templates, Page Templates, CSV Import/Export - [x] Database Templates, Page Templates, CSV Import/Export
- [x] Public Sharing - [x] Public Sharing
@@ -104,232 +137,153 @@ Propriétés custom, AI keywords, sync API, 12 tables DB
### v2.7.0 ✅ — Intégration Gitea Phase 1 ### v2.7.0 ✅ — Intégration Gitea Phase 1
### v2.7.1 ✅ — Private Pages Gitea ### v2.7.1 ✅ — Private Pages Gitea
### v2.8.0 ✅ — Gitea Phase 2 (2026-07-14) ### v2.8.0 ✅ — Gitea Phase 2
- [x] Créer fichiers dans le repo (New file UI + API PUT) - [x] Créer fichiers dans le repo (New file UI + API PUT)
- [x] Upload fichiers binaires (POST /upload, drag-drop) - [x] Upload fichiers binaires (POST /upload, drag-drop)
- [x] Syntax highlighting via Prism.js CDN - [x] Syntax highlighting via Prism.js CDN
- [x] Labels Gitea → tags FlowDeck (POST /sync-labels, 16 labels importés) - [x] Labels Gitea → tags FlowDeck (POST /sync-labels, 16 labels importés)
- [x] Historique commits par fichier (GET /commits?path=) - [x] Historique commits par fichier (GET /commits?path=)
### v2.9.0 ✅ — GitHub OAuth Provider (2026-07-14) ### v2.9.0 ✅ — GitHub OAuth Provider
- [x] GitHubProvider dans `app/auth/providers.py` - [x] GitHubProvider dans `app/auth/providers.py`
- [x] GitHubAdapter dans `app/services/github_adapter.py` - [x] GitHubAdapter dans `app/services/github_adapter.py`
- [x] Config GitHub dans `.env.example` (GITHUB_OAUTH_CLIENT_ID/SECRET) - [x] Config GitHub dans `.env.example`
### v3.0.0 ✅ — UX Professionnelle (2026-07-14) ### v3.0.0 ✅ — UX Professionnelle
- [x] Multi-sélection (checkboxes + Shift/Ctrl-click dans le sidebar) - [x] Multi-sélection (checkboxes + Shift/Ctrl-click dans le sidebar)
- [x] Raccourcis clavier (Ctrl+N, F2, Delete, Escape, Ctrl+S) - [x] Raccourcis clavier (Ctrl+N, F2, Delete, Escape, Ctrl+S)
- [x] Inline rename (double-clic → champ inline) - [x] Inline rename (double-clic → champ inline)
- [x] Loading skeletons (animations pulse dans workspaces + file viewer - [x] Loading skeletons (animations pulse dans workspaces + file viewer)
- [x] Grid/card view (mode grille/vignettes) - [x] Grid/card view (mode grille/vignettes)
- [x] Table sorting (tri par colonnes) - [x] Table sorting (tri par colonnes)
- [x] Sélecteur de vue: Tree, List, Details, Title, Content (5 modes) - [x] Sélecteur de vue: Tree, List, Details, Title, Content (5 modes)
- [x] Preview Panel latéral (contenu, métadonnées, tags, actions) - [x] Preview Panel latéral (contenu, métadonnées, tags, actions)
- [x] Tri par date (Oldest/Newest) - [x] Tri par date (Oldest/Newest)
### v2.4.0 ✅ — Tags Personnalisés par Utilisateur (2026-07-13) ### v4.0.0 ✅ — Accounts, Integrations & Sharing (MVP)
- [x] Tags isolés par `user_id` — chaque utilisateur voit ses propres tags - [x] `auth_method` sur users (local/gitea/github)
- [x] `UNIQUE(name, user_id)`, migration des tags existants - [x] Badge OAuth dans sidebar
- [x] API filtrage transparent (session cookie) - [x] Settings page avec Connect/Disconnect Gitea + GitHub
- [x] Sidebar rules (Private = distant seulement, Trash local-only)
### v2.5.0 ✅ — Administration Avancée (2026-07-13) - [x] Library page avec tabs + filtres source (All/Local/Gitea/GitHub)
- [x] Premier compte créé = admin automatique - [x] Modale Share (2 tabs: Share + Publish)
- [x] Panneau Admin dans Settings (Users & Roles, Audit) - [x] Page publique `/p/<slug>` (no auth, rendu HTML)
- [x] Table `login_history` (IP, user_agent, timestamp) - [x] Table `page_shares`, colonnes `is_published`, `is_shared`, `share_mode`
- [x] CRUD utilisateurs (créer, modifier rôle/password, supprimer) - [x] Table `recents` — tracking automatique
- [x] Statistiques par utilisateur (workspaces, pages, utilisation) - [x] Édition unifiée local/distant (même UI, bouton Commit pour Gitea)
- [x] CSRF fix sur les appels admin - [x] 133 tests passent
### v2.6.0 ✅ — My Account & Auth Locale (2026-07-13)
- [x] Section My Account: modifier username, nom, email, mot de passe
- [x] Toggle voir/cacher mot de passe (oeil/barré)
- [x] Label "Email or username" dans login
- [x] Refresh cookie session après modification compte
- [x] Register avec Gitea (OAuth crée compte + active intégration)
### v2.7.0 ✅ — Intégration Gitea Phase 1 (2026-07-13)
- [x] **OAuth2 Provider** — Gitea comme fournisseur OAuth2 (Client ID/Secret dans `.env`)
- [x] **Redirect URI dynamique** — basé sur le header `Host` (localhost + IP réseau)
- [x] **Workspace listing** — 2 sections: My Workspaces + Gitea Projects
- [x] **Tabs par organisation** — All | user | org1 | org2 avec compteurs
- [x] **Barre de recherche** — filtrage live par nom/description
- [x] **Lazy tree** — arborescence chargée un dossier à la fois
- [x] **File viewer** — lecture fichiers Gitea (décodé base64)
- [x] **Éditeur + commit** — modifier et commiter dans Gitea
- [x] **Delete fichier** — suppression avec confirmation + commit
- [x] **Arborescence dans le sidebar** — comme un workspace local
- [x] **Settings › Integrations** — connecter/déconnecter Gitea
- [x] **Fallback token admin** — GET sans token utilisateur (read-only)
- [x] **Write ops** — exigent token OAuth utilisateur (commit, delete)
- [x] **Limit=100** — tous les repos visibles (pas de pagination tronquée)
### v2.7.1 ✅ — Private Pages Gitea (2026-07-13)
- [x] Table `gitea_private_pages` — liée par (user_id, owner, repo)
- [x] API CRUD: GET/POST/PUT/DELETE private-pages
- [x] UI dans le workspace Gitea: liste + éditeur titre/contenu
- [x] Lien Private Pages dans le sidebar
- [x] Persistant entre sessions — survit au changement de workspace
--- ---
## v4.0.0 — Accounts, Integrations & Sidebar (priorité haute) ✅ COMPLETED ## 🔜 Prochaines versions
> **Rappel** : Section 6.5 de ARCHITECTURE.md documente le design complet. ### v4.0.1 — Onboarding & Polish 🎯 (priorité MAX)
> **Complété** : 2026-07-14 (v2.7.1–v3.0.0) + route publique 2026-07-18. > **Objectif** : rendre l'app utilisable dès la première visite, sans friction.
### 4.0 Account Model ✅ - [ ] **Landing page `/` pour visiteurs non-auth** — page d'accueil (pas de redirect loop)
- [x] **`auth_method`** — colonne `users.auth_method ∈ {local, gitea, github}` - [ ] **Page `/auth/register` GET** — formulaire d'inscription dédié (pas juste un tab)
- [x] **Auto-détection** — migrer les comptes existants (gitea_token → gitea, sinon local) - [ ] **Redirection `/` intelligente** — si pas connecté → login, si connecté sans Gitea → local workspace
- [x] **Badge OAuth** — 🦎/🐙 dans sidebar SI `auth_method` = provider - [ ] **Empty states cohérents** — onboarding dans le local workspace vide
- [x] **Pas de badge** — un compte local avec intégration ne montre PAS de badge - [ ] **Page 404 stylisée** — thème Notion sombre (actuellement HTML brut)
- [ ] **Unifier les routes API** — `/board/api/pages` ↔ `/api/pages` (cohérence)
- [ ] **Page Settings accessible** → lien dans le menu utilisateur déjà présent, vérifier fonctionnel
### 4.0a Intégrations & Déconnexion ✅ **Effort estimé** : 2-3 sessions | **Impact** : 🔴 Critique pour adoption
- [x] **Settings page** — montre toutes les intégrations avec bouton Connect/Disconnect
- [x] **Matrice déconnexion** : local→déco ok · gitea→déco github ok · github→déco gitea ok
- [x] **Provider principal** — pas de bouton Disconnect sur auth_method
- [x] **Compte local** — peut connecter Gitea + GitHub simultanément
### 4.0b Sidebar — règles par type de compte ✅ ### v4.0.2 — Qualité & Robustesse
- [x] **Private visible** UNIQUEMENT si workspace actif est distant (Gitea/GitHub) > **Objectif** : zéro crash, zéro regression, DX impeccable.
- [x] **Private caché** pour Scénario A (local pur)
- [x] **Trash local-only** — caché pour compte OAuth pur, restreint au contenu local
- [x] **Boutons → Library** sur chaque section (recents, favorites, shared, published…)
### 4.0c Share & Publish ✅ - [ ] **Gestion d'erreurs** — try/catch manquants, messages user-friendly
- [x] **Modale Share** — 2 tabs (Share + Publish) fonctionnels - [ ] **Validation inputs** — formulaires login/register, titre de page vide
- [x] **Share tab** — inviter email/user, général access lien - [ ] **Rate limiting effectif** — tester + ajuster les seuils
- [x] **Publish tab** — activer/désactiver, slug généré - [ ] **Session expiry UX** — message clair au lieu de redirect silencieux
- [x] **Page publique** — `/p/<slug>` sert le contenu publié (no auth) - [ ] **CSRF token refresh** — après expiration session
- [x] **Tables DB** — `page_shares`, colonnes `is_published`, `is_shared`, `share_mode` - [ ] **Mobile responsive** — sidebar, editor, modals sur petit écran
- [ ] **Tests de non-régression** — scénarios critiques (login, create page, publish)
### 4.0d Library ✅ **Effort estimé** : 2-3 sessions | **Impact** : 🟡 Élevé
- [x] **Page `/library?tab=`** — tabs Recents, Favorites, Shared, Published, Private, Workspace
- [x] **Filtres source** — All | Local | Gitea | GitHub
- [x] **Table `recents`** — tracking automatique des documents consultés
### 4.0e Édition unifiée ✅
- [x] **Même UI** pour fichiers locaux ET distants
- [x] **Bouton Commit** — visible uniquement pour fichiers distants
- [x] **Champ message** — pour les commits Gitea/GitHub
--- ---
## v4.0.0 — Parité Notion (Delta Analysis) ### v4.1.0 — Content Blocks enrichis (Notion Parity Tier 2)
> **Objectif** : parité d'édition avec Notion.
> **Méthodologie**: Comparaison exhaustive de FlowDeck v3.0.1 vs Notion (2025) — 60+ fonctionnalités analysées, 45 manquantes identifiées, 30 retenues pour v4.0.0.
### 🟢 Tier 1 — Critique (16 features)
#### 4.1 AI Assistant
- [ ] **Notion AI-style** — intégration LLM locale/nuage pour: écriture, résumé, traduction, brainstorming
- [ ] **Auto-complétion** — suggestions de contenu pendant la frappe
- [ ] **AI properties** — auto-remplissage de propriétés (résumé auto, catégorisation)
- [ ] **Slash AI commands** — `/ai write`, `/ai summarize`, `/ai translate`
#### 4.2 Embeds & Rich Media
- [ ] **60+ embeds** — YouTube, Figma, Google Maps, Loom, Twitter, CodePen, Miro, etc.
- [ ] **Image lightbox** — clic pour agrandir, navigation entre images
- [ ] **Inline file previews** — PDF, vidéo, audio directement dans la page
- [ ] **Bookmark cards** — aperçu riche des liens (OG metadata)
#### 4.3 Export & Import
- [ ] **Export PDF** — mise en page fidèle, table des matières
- [ ] **Export Markdown** — avec images et sous-pages
- [ ] **Export HTML** — site statique
- [ ] **Import Confluence/Evernote/Asana** — migration depuis autres outils
### 🟡 Tier 2 — Important (8 features)
#### 4.4 Collaboration & Notifications
- [ ] **Realtime editing** — WebSocket, curseurs multi-utilisateurs
- [ ] **Inline comments** — commentaires sur sélection de texte
- [ ] **@mentions** — notifier un utilisateur → page/commentaire
- [ ] **Email notifications** — changements, mentions, rappels
#### 4.5 Content Blocks
- [ ] **Callout blocks** — boîtes colorées (info, warning, tip, success) - [ ] **Callout blocks** — boîtes colorées (info, warning, tip, success)
- [ ] **Table of contents** — auto-généré depuis les headings - [ ] **Table of contents** — auto-généré depuis les headings
- [ ] **Math equations** — LaTeX / KaTeX inline + block - [ ] **Math equations** — LaTeX / KaTeX inline + block
- [ ] **Toggle lists** — contenu expandable/collapsible - [ ] **Toggle lists** — contenu expandable/collapsible (déjà partiel)
- [ ] **Multi-colonnes** — layout flexible (2, 3 colonnes)
### 🟠 Tier 3 — Avancé (6 features) ### v4.2.0 — Export
- [ ] **Export Markdown** — avec images et sous-pages (déjà partiel dans editor)
- [ ] **Export PDF** — mise en page fidèle, table des matières
- [ ] **Export HTML** — site statique standalone
#### 4.6 Views & Layout ### v4.3.0 — Collaboration
- [ ] **Linked databases** — vue d'une DB dans plusieurs pages - [ ] **Inline comments** — commentaires sur sélection de texte
- [ ] **Charts & dashboards** — graphiques depuis données DB (bar, line, donut) - [ ] **@mentions** — notifier un utilisateur → page/commentaire
- [ ] **Multi-colonnes** — layout flexible (2, 3, 4 colonnes) - [ ] **Email notifications** — changements, mentions
- [ ] **Command palette** — Ctrl+P / Cmd+K recherche universelle
#### 4.7 Automations ### v4.4.0 — Embeds & Rich Media
- [ ] **Database automations** — if-this-then-that (ex: statut=done → assign next) - [ ] **Embeds** — YouTube, Figma, Google Maps, Twitter, etc.
- [ ] **Buttons** — boutons cliquables déclenchant des actions (créer page, modifier propriété…) - [ ] **Image lightbox** — clic pour agrandir, navigation
- [ ] **Bookmark cards** — aperçu riche des liens (OG metadata)
#### 4.8 Database Avancée ### v4.5.0 — Kanban Adaptable
- [ ] **Database unifiée** — refonte complète du système de database Notion-style - [ ] Colonnes configurables par utilisateur
- Inline databases dans n'importe quelle page - [ ] Cartes configurables (choisir propriétés affichées)
- Full-page databases avec vues multiples - [ ] Couverture de carte (image, icône, couleur)
- Templates de database (Project tracker, CRM, Inventory…) - [ ] WIP limits par colonne
- Champs calculés avec formules complexes
- Groupes de propriétés pliables
- Validation des propriétés (required, unique, min/max)
- Types de propriétés manquants: Person (multi-select users), Last edited time, Created by
- [ ] **Vues Notion complètes**
- Vue Timeline/Gantt avec dépendances visuelles
- Vue Board (Kanban) avec swimlanes et WIP limits
- Vue Calendar avec drag & drop reschedule
- Vue Gallery avec images de couverture
#### 4.9 Kanban Adaptable ### v4.6.0 — Calendar & Meetings
- [ ] **Kanban personnalisable par utilisateur** - [ ] Vue Calendrier drag & drop
- Colonnes configurables (propriété Select/Status) - [ ] Récurrence d'événements
- Cartes configurables (choisir quelles propriétés afficher) - [ ] Template Meeting Notes
- Couverture de carte (image, icône, couleur)
- Sous-tâches visibles directement sur la carte
- WIP limits par colonne avec alertes visuelles
- Vues sauvegardées par utilisateur (nom, filtres, tri, colonnes)
- Mode compact / mode détaillé
#### 4.10 Calendar & Meetings ### v4.7.0 — AI Assistant
- [ ] **Calendrier intégré** - [ ] Intégration LLM pour écriture/résumé/traduction
- Vue Calendrier avec drag & drop pour reschedule - [ ] Slash AI commands (`/ai write`, `/ai summarize`)
- Vue Jour/Semaine/Mois (comme Notion Calendar) - [ ] Auto-complétion
- Récurrence d'événements (daily, weekly, monthly, custom)
- Timezone support ### v4.8.0 — Command Palette & Recherche
- Rappels (in-app, email) - [ ] **Command palette** — Ctrl+K / Ctrl+P recherche universelle
- [ ] **Meeting Notes** - [ ] **Quick actions** — navigation, création, commandes
- Template Meeting Notes avec sections: Attendees, Agenda, Notes, Action Items
- Lien automatique avec le calendrier ### v4.9.0 — Automations
- Action items → création automatique de tâches - [ ] **Database automations** — if-this-then-that
- [ ] **Buttons** — cliquables déclenchant actions
### v4.10.0 — Database Avancée
- [ ] Inline databases dans n'importe quelle page
- [ ] Templates de database (Project tracker, CRM…)
- [ ] Validation des propriétés (required, unique, min/max)
--- ---
## v4.1.0 — Pro (futur) ## v5.0.0 — Pro (futur)
- [ ] **PWA** — Progressive Web App, offline support - [ ] **PWA** — Progressive Web App, offline support
- [ ] **SSO/SAML** — enterprise authentication - [ ] **SSO/SAML** — enterprise authentication
- [ ] **Granular permissions** — page-level, property-level access control - [ ] **Granular permissions** — page-level, property-level access control
- [ ] **Web Clipper** — extension navigateur sauvegarder vers FlowDeck - [ ] **Web Clipper** — extension navigateur
- [ ] **API publique** — REST API + webhooks - [ ] **API publique** — REST API + webhooks documentés
- [ ] **Realtime editing** — WebSocket, curseurs multi-utilisateurs
- [ ] **Synced blocks** — bloc synchronisé entre plusieurs pages - [ ] **Synced blocks** — bloc synchronisé entre plusieurs pages
- [ ] **Conditional formatting** — couleur cellule basée sur valeur
- [ ] **Pivot tables** — vues agrégées
- [ ] **Database containers** — sous-DBs imbriquées
--- ---
## Résumé des phases ## Résumé des phases
``` ```
v1.0.0 ✅ v1.1.0 ✅ v1.2.0 ✅ v1.3.0 ✅ v1.4.0 ✅ v1.5.0 ✅ v1.6.0 ✅ v1.7.0 ✅ v0.x–v1.x ✅ v2.x ✅ v3.0.0 ✅ v4.0.0 ✅ v4.0.1 ⬜
Production Pages Editor DB Concept Properties Relations Views View+ Base + Kanban Éditeur + Gitea UX Pro MVP Onboarding
+ DB + Auth + Workspaces + Multi-select Accounts & Polish
+ UI Notion + Tags + Admin + Sharing PRIORITÉ
+ GitHub OAuth + Library MAX
v2.0.0 ✅ v2.1.0 ✅ v2.2.0 ✅ v2.3.0 ✅ v2.4.0 ✅ v2.5.0 ✅ v2.6.0 ✅ v2.7.0 ✅ v4.0.2 ⬜ v4.1.0 ⬜ v4.2.0 ⬜ v4.3.0 ⬜ v4.4–4.10 ⬜ v5.0.0 ⬜
Editor+ Workspace Tags Views5 Tags/user Admin Account Gitea P1 Quality Blocks Export Collab Notion Pro
Local Panel & Tests enrichis PDF/MD @mentions Parity (futur)
v2.7.1 ✅ v2.8.0 ✅ v2.9.0 ✅ v3.0.0 ✅ v3.0.1 ✅ v4.0.0 ✅ v4.1.0 ⬜
Private Gitea P2 GitHub Pro UX Quality Accounts+ Pro
Pages Parité
``` ```
*Dernière mise à jour: 2026-07-18 — v4.0.0 Accounts/Integrations complété, route publique /p/<slug> ajoutée* *Dernière mise à jour: 2026-07-18 — Roadmap restructuré, focus MVP, stratégie de branches Gitea*