Créer un projet (Genesis)
Le mode Genesis crée un projet complet de A à Z à partir d'une simple idée.
Vue d'ensemble
/atoox --genesis "application de gestion de tâches collaborative"
Genesis transforme une intention en projet production-ready avec :
- Structure de fichiers complète
- Configuration CI/CD
- Tests initiaux
- Documentation
- Première feature implémentée
Pipeline Genesis
┌─────────────────────────────────────────────────────────────┐
│ PIPELINE GENESIS │
├─────────────────────────────────────────────────────────────┤
│ │
│ GEN-00 Capture Intent → Recueillir l'intention │
│ ↓ │
│ GEN-01 Amplify Intent → 8 experts amplifient │
│ ↓ │
│ GEN-02 Genesis Document → Spec complète (2000-4000 mots)│
│ ↓ │
│ GEN-03 MCP Discovery → Détecter MCPs disponibles │
│ ↓ │
│ GEN-04 Scaffold Project → Créer la structure │
│ ↓ │
│ GEN-05 Configure Infra → Git, CI/CD, linting │
│ ↓ │
│ GEN-06 Seed Backlog → User Stories initiales │
│ ↓ │
│ GEN-07 Sprint 0 → Setup fondamental │
│ ↓ │
│ GEN-08 First Feature → Pipeline --full feature #1 │
│ ↓ │
│ GEN-09 Delivery → Rapport final │
│ │
└─────────────────────────────────────────────────────────────┘
Exemple complet
Lancement
/atoox --genesis "app de suivi d'habitudes avec gamification"
GEN-00 : Capture Intent
ATOOX pose des questions de clarification :
╔══════════════════════════════════════════════════════════════╗
║ ◆ ATOOX GENESIS · Capture Intent ║
╚══════════════════════════════════════════════════════════════╝
Quelques questions pour préciser votre vision :
1. Public cible ?
→ Particuliers cherchant à améliorer leurs habitudes quotidiennes
2. Plateformes ?
→ Web (responsive) + PWA
3. Stack préférée ?
→ Next.js + TypeScript (ou laisser ATOOX choisir)
4. Fonctionnalités prioritaires ?
→ Création d'habitudes, streaks, points/niveaux, rappels
5. Authentification ?
→ Email + Google OAuth
6. Monétisation ?
→ Freemium (base gratuite, premium pour features avancées)
GEN-01 : Amplify Intent
8 experts enrichissent l'idée :
╔══════════════════════════════════════════════════════════════╗
║ ◆ PANEL D'EXPERTS · Amplification ║
╚══════════════════════════════════════════════════════════════╝
Marty Cagan (Product) :
"Focalisez sur le 'habit loop' : cue → routine → reward.
La gamification doit renforcer ce cycle, pas le remplacer."
Don Norman (UX) :
"Rendez l'entrée d'habitude frictionless. Maximum 2 taps
pour logger une habitude complétée."
Dan Ariely (Psychology) :
"Utilisez le 'loss aversion' : montrez ce qu'ils perdent
en cassant un streak, pas juste ce qu'ils gagnent."
Kent Beck (Engineering) :
"Commencez simple : une habitude, un streak. Ajoutez
la complexité quand vous avez validé le core loop."
Bruce Schneier (Security) :
"Données de santé = sensible. RGPD by design.
Chiffrement end-to-end pour les données personnelles."
Addy Osmani (Performance) :
"PWA avec service worker pour fonctionner offline.
Les utilisateurs logguent souvent sans connexion."
Seth Godin (Marketing) :
"Le nom et le branding doivent évoquer la transformation,
pas la contrainte. 'Streakify' > 'Habit Tracker'."
Nneka Lara (Accessibility) :
"Les rappels doivent être configurables. Pas de notifications
forcées. Support des lecteurs d'écran pour le dashboard."
GEN-02 : Genesis Document
ATOOX génère une spécification complète (extrait) :
# Streakify - Genesis Document
## Vision
Application de suivi d'habitudes transformant les routines quotidiennes
en quêtes engageantes grâce à la gamification psychologiquement fondée.
## Target Users
- Persona principal : Professionnels 25-45 ans voulant installer des routines
- Persona secondaire : Étudiants en période d'examens
## Core Features (MVP)
### 1. Habit Management
- Créer/éditer/supprimer une habitude
- Types : quotidien, hebdomadaire, X fois par semaine
- Catégories : Santé, Productivité, Développement personnel, Custom
### 2. Streak System
- Compteur de jours consécutifs
- Protection streak (1 skip gratuit par semaine en premium)
- Milestones : 7, 21, 30, 60, 90, 365 jours
### 3. Gamification
- Points XP par habitude complétée
- Niveaux (1-100)
- Badges débloquables
- Classement optionnel entre amis
### 4. Notifications
- Rappels personnalisables
- Heure/fréquence configurables
- Mode silencieux
## Technical Architecture
### Stack
- Frontend : Next.js 14 (App Router) + TypeScript
- UI : Tailwind CSS + shadcn/ui
- State : Zustand + React Query
- Backend : Next.js API Routes
- Database : PostgreSQL (Supabase)
- Auth : NextAuth.js (Email + Google)
- Hosting : Vercel
### Data Model
[Diagramme détaillé...]
## User Stories (Sprint 0 + MVP)
[Liste priorisée...]
## Success Metrics
- DAU/MAU ratio > 40%
- Retention D7 > 30%
- Avg streak length > 14 days
GEN-04 : Scaffold Project
Structure générée :
streakify/
├── .github/
│ └── workflows/
│ ├── ci.yml
│ └── deploy.yml
├── src/
│ ├── app/
│ │ ├── (auth)/
│ │ │ ├── login/
│ │ │ └── signup/
│ │ ├── (dashboard)/
│ │ │ ├── habits/
│ │ │ ├── profile/
│ │ │ └── stats/
│ │ ├── api/
│ │ │ ├── auth/
│ │ │ └── habits/
│ │ ├── layout.tsx
│ │ └── page.tsx
│ ├── components/
│ │ ├── ui/
│ │ ├── habits/
│ │ └── gamification/
│ ├── hooks/
│ ├── lib/
│ │ ├── db/
│ │ ├── auth/
│ │ └── utils/
│ ├── stores/
│ └── types/
├── tests/
│ ├── unit/
│ ├── integration/
│ └── e2e/
├── docs/
├── .env.example
├── .eslintrc.json
├── .prettierrc
├── next.config.js
├── tailwind.config.ts
├── tsconfig.json
├── vitest.config.ts
└── package.json
GEN-05 : Configure Infra
Configuration automatique :
# .github/workflows/ci.yml
name: CI
on:
push:
branches: [main, develop]
pull_request:
branches: [main]
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v2
- uses: actions/setup-node@v4
- run: pnpm install
- run: pnpm lint
- run: pnpm typecheck
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v2
- uses: actions/setup-node@v4
- run: pnpm install
- run: pnpm test
GEN-06 : Seed Backlog
User Stories générées :
╔══════════════════════════════════════════════════════════════╗
║ BACKLOG INITIAL ║
╠══════════════════════════════════════════════════════════════╣
║ ║
║ SPRINT 0 (Setup) ║
║ ───────────────── ║
║ □ US-001 : Configurer le projet Next.js ║
║ □ US-002 : Mettre en place l'authentification ║
║ □ US-003 : Créer le schéma de base de données ║
║ □ US-004 : Configurer CI/CD ║
║ ║
║ MVP (Sprint 1-3) ║
║ ───────────────── ║
║ □ US-005 : Créer une habitude ║
║ □ US-006 : Marquer une habitude comme complétée ║
║ □ US-007 : Afficher le streak d'une habitude ║
║ □ US-008 : Voir le dashboard des habitudes ║
║ □ US-009 : Recevoir des points XP ║
║ □ US-010 : Afficher le niveau actuel ║
║ □ US-011 : Configurer les rappels ║
║ □ US-012 : Voir les statistiques de la semaine ║
║ ║
╚══════════════════════════════════════════════════════════════╝
GEN-08 : First Feature
ATOOX implémente la première feature avec le pipeline --full :
Implémentation : US-005 "Créer une habitude"
Steps exécutés :
✅ 00c-centuple
✅ 00-clarify
✅ 00-init (branche: feature/create-habit)
✅ 00b-context
✅ 01-analyze
✅ 02-plan
✅ 03-execute
✅ 04-validate
✅ 05-examine
✅ 06-resolve
✅ 07-tests
✅ 08-run-tests
✅ 10-security
✅ 11-ui
✅ 13-docs
✅ 09-finish
Fichiers créés :
- src/app/(dashboard)/habits/new/page.tsx
- src/components/habits/HabitForm.tsx
- src/hooks/useCreateHabit.ts
- src/lib/db/habits.ts
- src/types/habit.ts
- tests/unit/habits/create.test.ts
GEN-09 : Delivery
Rapport final :
╔═══════════════════════════════════════════════════════════════════╗
║ ◆ ATOOX GENESIS — PROJET CRÉÉ ║
╠═══════════════════════════════════════════════════════════════════╣
║ Projet : Streakify ║
║ Stack : Next.js 14 + TypeScript + Tailwind + Supabase ║
║ Repository : /Users/you/projects/streakify ║
╠═══════════════════════════════════════════════════════════════════╣
║ Structure : ✅ 47 fichiers créés ║
║ Config : ✅ ESLint, Prettier, TypeScript, Tailwind ║
║ CI/CD : ✅ GitHub Actions configuré ║
║ Tests : ✅ Vitest + Testing Library configuré ║
║ Auth : ✅ NextAuth.js (Email + Google) ║
║ Database : ✅ Schéma Prisma créé ║
║ Feature #1 : ✅ "Créer une habitude" implémentée ║
╠═══════════════════════════════════════════════════════════════════╣
║ Backlog : 12 User Stories (Sprint 0 + MVP) ║
║ Docs : README, CONTRIBUTING, Architecture ║
╚═══════════════════════════════════════════════════════════════════╝
Prochaines étapes :
1. cd streakify && pnpm install
2. Configurer .env (voir .env.example)
3. pnpm db:push (créer les tables)
4. pnpm dev (lancer le serveur)
5. /atoox --kanban (voir le backlog)
Options Genesis
# Genesis avec stack spécifique
/atoox --genesis --stack=remix "mon app"
# Genesis mode économique (moins de fichiers)
/atoox --genesis --economy "MVP rapide"
# Genesis avec estimation avant création
/atoox --genesis --estimate "grosse app"
Prochaines étapes
- Workflow TDD — Développer en TDD
- Modes — Explorer tous les modes
- Configuration — Personnaliser Genesis