Mathew fa4bf546b4 Logo de l'app (SVG)
Nouveau logo : console de jeu portable avec une coche sur l'écran, sur un
badge dégradé indigo→teal (couleurs d'accent de l'app).
- Composant réutilisable Logo.tsx (id de dégradé unique via useId)
- public/logo.svg + favicon dans index.html
- Remplace l'icône Gamepad2 dans la sidebar, le login et l'onboarding

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-01 14:10:28 +02:00
2026-07-01 14:10:28 +02:00
2026-07-01 14:10:28 +02:00
V1
2026-07-01 12:39:59 +02:00
2026-07-01 14:10:28 +02:00
V1
2026-07-01 12:39:59 +02:00
2026-06-30 17:09:52 +02:00
2026-06-30 17:09:52 +02:00
V1
2026-07-01 12:39:59 +02:00
2026-06-30 17:09:52 +02:00
2026-06-30 17:09:52 +02:00

🎮 GameDev Tracker

Application desktop de gestion de projet de jeu vidéo, pensée pour une petite équipe (5-6 personnes). Construite avec Tauri + React + TypeScript + Tailwind + Framer Motion, base de données gratuite Supabase.

Fonctionnalités

  • 🔐 Connexion / inscription par email + mot de passe
  • 👥 Équipe, rôles & pôles — le rôle d'un membre (programmeur, artiste, game designer…) définit son pôle
  • 📋 Tâches & Kanban — glisser-déposer entre À faire / En cours / En revue / Terminé, tâche confiée à un pôle avec une ou plusieurs personnes assignées
  • ⏱️ Feuille de temps — vue par semaine (7 jours en colonnes) : consigne les heures faites chaque jour sur une tâche ou une activité libre (réunion, veille…)
  • 🐛 Suivi de bugs — sévérité, priorité, statut, pôle, assignation
  • 🔔 Notifications — quand une tâche/un bug est confié à un pôle, ses membres reçoivent une notif (cloche 🔔 dans la barre latérale)
  • 📊 Tableau de bord — avancement global, répartition des tâches, temps total, échéances
  • 🔄 Synchro temps réel — quand un membre modifie une tâche, les autres la voient se mettre à jour

🚀 Mise en route

1. Créer la base de données (gratuit, une seule fois pour toute l'équipe)

  1. Va sur supabase.com et crée un compte.
  2. Clique New project (choisis un mot de passe de base de données, garde-le quelque part).
  3. Attends ~2 min que le projet se crée.
  4. Dans le menu de gauche : SQL Editor → New query.
  5. Ouvre le fichier supabase/schema.sql de ce dépôt, copie tout son contenu, colle-le, puis clique Run.

    Cela crée les tables (profils, projets, tâches, bugs, suivi du temps, notifications), la sécurité et la synchro temps réel.

    🆙 Tu avais déjà installé une version précédente (avec les jalons) ? Exécute plutôt, dans l'ordre, supabase/migration_v2.sql (supprime les jalons, ajoute pôles + assignation multiple + notifications), supabase/migration_v3.sql (feuille de temps : entrées libres type réunion) puis supabase/migration_v4.sql (plusieurs pôles par membre) — sans perdre tes données.

    🔁 Après la migration v4, redéploie l'Edge Function pour que l'admin puisse gérer les pôles multiples : supabase functions deploy admin-users --no-verify-jwt.

  6. Menu Settings (⚙️) → API. Note deux valeurs :
    • Project URL → ressemble à https://xxxxx.supabase.co
    • anon public (sous Project API keys) → longue chaîne commençant par eyJ...
  7. Recommandé pour une petite équipe : désactive la confirmation d'email pour pouvoir se connecter tout de suite après l'inscription.
    • Menu Authentication → Sign In / Providers → Email : désactive « Confirm email » et enregistre.
    • (Sinon, chaque membre devra cliquer sur un lien reçu par email avant de pouvoir se connecter.)

La clé anon public est faite pour être distribuée à l'app cliente : pas de secret sensible exposé.

2. Lancer l'application

Prérequis (déjà installés sur cette machine) : Node.js, Rust.

npm install
npm run tauri:dev

Au premier lancement, l'app affiche un écran de configuration : colle l'URL et la clé anon obtenues à l'étape 1, puis Connecter. Ensuite : crée ton compte (avec ton rôle), crée un projet, et c'est parti. 🎉

3. Distribuer à l'équipe

Pour générer un installeur (.exe/.msi sur Windows) :

npm run tauri:build

Le fichier d'installation se trouve dans src-tauri/target/release/bundle/. Envoie-le à tes coéquipiers. À leur premier lancement, ils saisissent la même URL + clé anon que toi — ils rejoignent ainsi le même projet partagé.


🧰 Scripts utiles

Commande Effet
npm run tauri:dev Lance l'app en mode développement (rechargement à chaud)
npm run tauri:build Génère l'installeur de l'app
npm run dev Lance uniquement le front-end dans le navigateur (sans la fenêtre desktop)
npm run typecheck Vérifie les types TypeScript

🏗️ Architecture

├─ index.html              # point d'entrée du front
├─ src/                    # application React (front-end)
│  ├─ pages/               # Dashboard, Kanban, Planning (feuille de temps), Bugs, Members, Admin, Login, Setup
│  ├─ components/          # Layout, UI, animations
│  └─ lib/                 # client Supabase, types, contexte global, config
├─ src-tauri/              # enveloppe desktop Tauri (Rust)
└─ supabase/schema.sql     # schéma de la base à exécuter dans Supabase

🔒 Note de sécurité

L'app suppose une équipe de confiance : tout membre connecté peut lire et modifier les données du projet (politique RLS « accès complet pour les utilisateurs authentifiés »). C'est volontaire pour rester simple sur une petite équipe. Si un jour tu veux des permissions plus fines (ex. seul le lead supprime un projet), il faudra ajuster les policies dans supabase/schema.sql.

S
Description
No description provided
Readme 1.4 MiB
Languages
TypeScript 78.9%
PLpgSQL 7%
NSIS 6.3%
JavaScript 2.8%
Rust 2.7%
Other 2.3%