bruno 68f2b3f03b
CI / test (push) Failing after 4s
CI / lint (push) Failing after 4s
fix: issues with pull_request:null no longer classified as PRs
Gitea API returns 'pull_request': null for regular issues.
Old filter 'pull_request' in issue matched the key even when null,
sending ALL issues to the PRs section instead of the Kanban columns.
Fixed: i.get('pull_request') — null is falsy, real PR dict is truthy.

Also: labels/milestones dropdowns empty = repo has none configured in Gitea.
2026-07-08 10:14:28 -04:00

FlowDeck

Gestion de projets Kanban légère, auto-hébergée, intégrée nativement à Gitea.

Quick Start

cp .env.example .env
# Éditer .env avec votre token Gitea
docker compose up -d
# → http://localhost:8080

Features

  • Dashboard listant tous les projets Gitea (user + orgs)
  • Board Kanban 5 colonnes : Backlog → À faire → En cours → Révision → Terminé
  • Issues Gitea → cartes : sync automatique, filtres par milestone/label/assignee
  • Drag & drop (SortableJS) avec persistance SQLite
  • Sync bidirectionnelle : déplacer une carte → label Gitea mis à jour, colonne Terminé → ferme l'issue
  • Colonnes personnalisables + configuration du mapping colonne→label Gitea
  • WIP limits configurables par colonne
  • Notes Markdown par projet (éditeur + sauvegarde)
  • API REST : /api/health, /api/stats, /api/projects, /api/move, /api/col-mapping
  • Thème clair/sombre commutable
  • Filtres par milestone, label, assignee
  • PR affichées séparément des issues
  • Dark/light theme toggle avec persistance localStorage

Stack

Couche Techno
Frontend HTML5 + Jinja2 + CSS custom, HTMX, Alpine.js, SortableJS
Backend Python 3.12 + FastAPI + Uvicorn + httpx
BDD SQLite (WAL mode) — /data/flowdeck.db
Intégration API REST Gitea v1 (token auth)
Déploiement Docker (Python 3.12-slim), docker-compose

Configuration

Voir .env.example. Variables principales :

GITEA_URL=https://git.dracodev.net
GITEA_TOKEN=votre_token
APP_PORT=8080
DATABASE_URL=sqlite:////data/flowdeck.db
SYNC_INTERVAL=60
GITEA_CACHE_TTL=30

API Reference

Endpoint Description
GET /api/health Health check (DB + Gitea)
GET /api/stats Statistiques globales
GET /api/projects Projets Gitea (JSON)
POST /api/move Déplacer une carte
POST /api/col-mapping Configurer mapping colonne→label
GET /api/board-config/{owner}/{repo} Configuration board
POST /api/board-config/{owner}/{repo} Mettre à jour colonnes/WIP

Développement

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
cp .env.example .env  # éditer
uvicorn app.main:app --reload --port 8080

Licence

MIT

S
Description
FlowDeck — Gestion de projets Kanban léger intégré à Gitea
Readme
22 MiB
Languages
Python 58.2%
JavaScript 21.1%
HTML 17.3%
CSS 3.4%