102 lines
3.9 KiB
Markdown
102 lines
3.9 KiB
Markdown
# FlowDeck
|
||
|
||
Clone complet de **Notion** intégré nativement à **Gitea** — Databases, Pages, Kanban, Calendar, Gallery, Timeline, List, Multi-Users.
|
||
|
||
> **v6.7.0** — SSO / SAML + OIDC entreprise (auth fédérée IdP, auto-provisioning, group mapping, mode SSO only) · avant : v6.6.x agent API + marketplace, v6.5.x synced blocks, v6.4.0 realtime, PWA offline
|
||
|
||
## Quick Start
|
||
|
||
```bash
|
||
cp .env.example .env
|
||
# Éditer .env avec votre token Gitea
|
||
docker compose up -d
|
||
# → http://localhost:8080
|
||
```
|
||
|
||
## Features
|
||
|
||
### Database & Properties (v1.3–v1.5)
|
||
- **Collections**: databases indépendantes de Gitea, schéma JSON
|
||
- **21 types de propriétés**: title, text, number, select, status, date, person, checkbox, url, email, phone, files, unique_id, relation, rollup, formula + auto-props
|
||
- **Relations bidirectionnelles** + **Rollups** (12 agrégations) + **Formulas** (19 fonctions)
|
||
- **GiteaBoardCompat**: adaptateur boards Gitea legacy → Collections
|
||
|
||
### Vues Multiples (v1.6–v1.7)
|
||
- **Table**: colonnes SSR, triables
|
||
- **Board (Kanban)**: colonnes, groupes, drag & drop
|
||
- **Calendar**: grid mensuel, navigation, événements
|
||
- **Gallery**: cartes visuelles, card_size configurable
|
||
- **List**: vue compacte avec preview
|
||
- **Timeline**: barres Gantt horizontales
|
||
- **Status Overview**: Donut chart SVG
|
||
- **Team Load**: Barres empilées
|
||
|
||
### Sub-items & Dépendances (v1.8)
|
||
- **Sub-items**: parent_id auto-référence, hiérarchie illimitée
|
||
- **Status aggregate**: parent = Done si tous enfants Done
|
||
- **Dependencies**: Blocking/Blocked by, contrainte de transition
|
||
|
||
### My Tasks (v1.9)
|
||
- Dashboard cross-collection agrégeant toutes les tâches assignées
|
||
- Vues: All, Today, Overdue, Next 7 days
|
||
|
||
### Multi-User & Collaboratif (v2.0)
|
||
- **Workspaces**: espaces partagés avec rôles (admin, editor, commenter, viewer)
|
||
- **Comments**: commentaires threadés sur les pages
|
||
- **Page History**: historique des modifications avec snapshots
|
||
- **Favorites**: favoris par utilisateur
|
||
- **Templates**: database + page templates
|
||
- **CSV Import/Export**
|
||
- **Public Sharing**: lien de partage lecture seule
|
||
|
||
### API & Intégrations (v6.3–v6.6)
|
||
- **API publique REST v2**: `/api/v2` — CRUD complet, Bearer + scopes `read/write/admin`, pagination, filtres, erreurs RFC 7807, idempotence, audit — [guide](docs/API_GUIDE_V6.md) · OpenAPI `/docs`
|
||
- **API agent publique (v6.6)**: `/api/v2/agents/*` — agents, conversations, **run synchrone JSON**, journal d'actions + rollback, `trigger` externe
|
||
- **Marketplace de skills (v6.6)**: export/import portable + galerie de 6 presets installables (`/api/v2/skills/*`), section « Galerie » dans la palette `/` de l'agent
|
||
- **API publique v1**: `/api/v1` (lecture seule, compat)
|
||
- **Webhooks sortants**: gestion + dispatcher d'événements (CRUD v2)
|
||
- **Web Clipper**: extension navigateur Manifest V3 (article/sélection/bookmark/screenshot)
|
||
- **PWA**: manifest.json + service worker, offline support
|
||
|
||
### UI Notion-Style (v1.1–v1.2)
|
||
- Sidebar gauche avec sections hiérarchiques
|
||
- Topbar avec breadcrumbs (workspace > projet > page)
|
||
- Dark mode Notion: `#191919` fond, `#222222` sidebar
|
||
- Éditeur de blocs: slash menu (/), navigation clavier, placeholders
|
||
|
||
### Intégration Gitea
|
||
- Issues Gitea → cartes, sync labels, milestones, assignees, due dates
|
||
- OAuth2 Gitea, CSRF, rate limiting, webhooks
|
||
|
||
## Stack
|
||
|
||
| Couche | Techno |
|
||
|--------|--------|
|
||
| Frontend | Jinja2 + HTMX + Alpine.js + SortableJS + CSS |
|
||
| Backend | Python 3.12 + FastAPI + httpx |
|
||
| BDD | SQLite (WAL, 21 tables) — `/data/flowdeck.db` |
|
||
| Déploiement | Docker (python:3.12-slim), docker-compose |
|
||
|
||
## Configuration
|
||
|
||
```env
|
||
GITEA_URL=https://git.dracodev.net
|
||
GITEA_TOKEN=votre_token
|
||
APP_PORT=8080
|
||
DATABASE_URL=sqlite:////data/flowdeck.db
|
||
```
|
||
|
||
## Tests
|
||
|
||
```bash
|
||
python3 -m pytest tests/ -v # 764/764 passent (0 skip)
|
||
```
|
||
|
||
## Roadmap
|
||
|
||
Voir [ROADMAP.md](ROADMAP.md) — 7/7 blocs complétés, 52/52 features ✅
|
||
|
||
## Licence
|
||
|
||
MIT
|