flowbook 0.1.4 → 0.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Flowbook
2
2
 
3
- > **English** | [한국어](./README.ko.md) | [简体中文](./README.zh-CN.md) | [日本語](./README.ja.md) | [Español](./README.es.md) | [Português (BR)](./README.pt-BR.md) | [Français](./README.fr.md) | [Русский](./README.ru.md) | [Deutsch](./README.de.md)
3
+ > **English** | [한국어](./docs/README.ko.md) | [简体中文](./docs/README.zh-CN.md) | [日本語](./docs/README.ja.md) | [Español](./docs/README.es.md) | [Português (BR)](./docs/README.pt-BR.md) | [Français](./docs/README.fr.md) | [Русский](./docs/README.ru.md) | [Deutsch](./docs/README.de.md)
4
4
 
5
5
  Storybook for flowcharts. Auto-discovers Mermaid diagram files from your codebase, organizes them by category, and renders them in a browsable viewer.
6
6
 
@@ -109,6 +109,16 @@ npx skills add Epsilondelta-ai/flowbook
109
109
 
110
110
  This auto-detects your installed coding agents and installs the skill to the correct directories.
111
111
 
112
+ ### Global Installation
113
+
114
+ To install the skill globally (available across all projects):
115
+
116
+ ```bash
117
+ npx skills add -g Epsilondelta-ai/flowbook
118
+ ```
119
+
120
+ This installs the skill to each agent's global directory (e.g., `~/.claude/skills/`, `~/.config/opencode/skills/`, etc.).
121
+
112
122
  ### Compatible Agents
113
123
 
114
124
  | Agent | Skill Location |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flowbook",
3
- "version": "0.1.4",
3
+ "version": "0.1.6",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "flowbook": "./dist/cli.js"
package/README.de.md DELETED
@@ -1,219 +0,0 @@
1
- # Flowbook
2
-
3
- > [English](./README.md) | [한국어](./README.ko.md) | [简体中文](./README.zh-CN.md) | [日本語](./README.ja.md) | [Español](./README.es.md) | [Português (BR)](./README.pt-BR.md) | [Français](./README.fr.md) | [Русский](./README.ru.md) | **Deutsch**
4
-
5
- Storybook für Flussdiagramme. Erkennt automatisch Mermaid-Diagrammdateien in Ihrer Codebasis, organisiert sie nach Kategorien und rendert sie in einem browserbaren Viewer.
6
-
7
- ![Vite](https://img.shields.io/badge/vite-6.x-646CFF?logo=vite&logoColor=white)
8
- ![React](https://img.shields.io/badge/react-19.x-61DAFB?logo=react&logoColor=white)
9
- ![Mermaid](https://img.shields.io/badge/mermaid-11.x-FF3670?logo=mermaid&logoColor=white)
10
- ![TypeScript](https://img.shields.io/badge/typescript-5.x-3178C6?logo=typescript&logoColor=white)
11
-
12
- ## Schnellstart
13
-
14
- ```bash
15
- # Initialisieren — fügt Skripte + Beispieldatei hinzu
16
- npx flowbook@latest init
17
-
18
- # Entwicklungsserver starten
19
- npm run flowbook
20
- # → http://localhost:6200
21
-
22
- # Statische Seite erstellen
23
- npm run build-flowbook
24
- # → flowbook-static/
25
- ```
26
-
27
- ## CLI
28
-
29
- ```
30
- flowbook init Flowbook im Projekt einrichten
31
- flowbook dev [--port 6200] Entwicklungsserver starten
32
- flowbook build [--out-dir d] Statische Seite erstellen
33
- ```
34
-
35
- ### `flowbook init`
36
-
37
- - Fügt die Skripte `"flowbook"` und `"build-flowbook"` zu Ihrer `package.json` hinzu
38
- - Erstellt `flows/example.flow.md` als Startvorlage
39
-
40
- ### `flowbook dev`
41
-
42
- Startet einen Vite-Entwicklungsserver unter `http://localhost:6200` mit HMR. Änderungen an `.flow.md`- oder `.flowchart.md`-Dateien werden sofort übernommen.
43
-
44
- ### `flowbook build`
45
-
46
- Erstellt eine statische Seite in `flowbook-static/` (konfigurierbar über `--out-dir`). Überall deploybar.
47
-
48
- ## Flow-Dateien Erstellen
49
-
50
- Erstellen Sie eine `.flow.md`- (oder `.flowchart.md`-) Datei an beliebiger Stelle in Ihrem Projekt:
51
-
52
- ````markdown
53
- ---
54
- title: Login-Ablauf
55
- category: Authentifizierung
56
- tags: [auth, login, oauth]
57
- order: 1
58
- description: Benutzer-Authentifizierungsablauf mit OAuth2
59
- ---
60
-
61
- ```mermaid
62
- flowchart TD
63
- A[Benutzer] --> B{Authentifiziert?}
64
- B -->|Ja| C[Dashboard]
65
- B -->|Nein| D[Login-Seite]
66
- ```
67
- ````
68
-
69
- Flowbook erkennt die Datei automatisch und fügt sie dem Viewer hinzu.
70
-
71
- ## Frontmatter-Schema
72
-
73
- | Feld | Typ | Erforderlich | Beschreibung |
74
- |---------------|------------|--------------|---------------------------------------|
75
- | `title` | `string` | Nein | Angezeigter Titel (Standard: Dateiname) |
76
- | `category` | `string` | Nein | Kategorie in der Seitenleiste (Standard: "Uncategorized") |
77
- | `tags` | `string[]` | Nein | Filterbare Tags |
78
- | `order` | `number` | Nein | Sortierreihenfolge innerhalb der Kategorie (Standard: 999) |
79
- | `description` | `string` | Nein | Beschreibung in der Detailansicht |
80
-
81
- ## Datei-Erkennung
82
-
83
- Flowbook durchsucht standardmäßig folgende Muster:
84
-
85
- ```
86
- **/*.flow.md
87
- **/*.flowchart.md
88
- ```
89
-
90
- Ignoriert `node_modules/`, `.git/` und `dist/`.
91
-
92
- ## KI-Agent-Fähigkeit
93
-
94
- `flowbook init` installiert automatisch KI-Agent-Fähigkeiten in alle unterstützten Codierungs-Agent-Verzeichnisse.
95
- Wenn ein Codierungs-Agent (Claude Code, OpenAI Codex, VS Code Copilot, Cursor, Gemini CLI usw.) das Schlüsselwort **"flowbook"** in Ihrer Eingabeaufforderung erkennt, wird er:
96
-
97
- 1. Ihre Codebasis auf logische Abläufe analysieren (API-Routen, Authentifizierung, Zustandsverwaltung, Geschäftslogik usw.)
98
- 2. Flowbook einrichten, falls noch nicht initialisiert
99
- 3. `.flow.md`-Dateien mit Mermaid-Diagrammen für jeden bedeutenden Ablauf generieren
100
- 4. Den Build überprüfen
101
-
102
- ### Fähigkeit über CLI installieren
103
-
104
- Sie können die Fähigkeit auch eigenständig über [skills.sh](https://skills.sh) installieren:
105
-
106
- ```bash
107
- npx skills add Epsilondelta-ai/flowbook
108
- ```
109
-
110
- Erkennt automatisch Ihre installierten Codierungs-Agenten und installiert die Fähigkeit in die richtigen Verzeichnisse.
111
-
112
- ### Kompatible Agenten
113
-
114
- | Agent | Fähigkeitsort |
115
- |-------|---------------|
116
- | Claude Code | `.claude/skills/flowbook/SKILL.md` |
117
- | OpenAI Codex | `.agents/skills/flowbook/SKILL.md` |
118
- | VS Code / GitHub Copilot | `.github/skills/flowbook/SKILL.md` |
119
- | Google Antigravity | `.agent/skills/flowbook/SKILL.md` |
120
- | Gemini CLI | `.gemini/skills/flowbook/SKILL.md` |
121
- | Cursor | `.cursor/skills/flowbook/SKILL.md` |
122
- | Windsurf (Codeium) | `.windsurf/skills/flowbook/SKILL.md` |
123
- | AmpCode | `.amp/skills/flowbook/SKILL.md` |
124
- | OpenCode / oh-my-opencode | `.opencode/skills/flowbook/SKILL.md` |
125
-
126
- <details>
127
- <summary>Manuelle Fähigkeitsinstallation</summary>
128
-
129
- Wenn Sie `flowbook init` oder `npx skills add` nicht verwendet haben, kopieren Sie die Fähigkeit manuell:
130
-
131
- ```bash
132
- # Beispiel: Claude Code
133
- mkdir -p .claude/skills/flowbook
134
- cp node_modules/flowbook/src/skills/flowbook/SKILL.md .claude/skills/flowbook/
135
-
136
- # Beispiel: Cursor
137
- mkdir -p .cursor/skills/flowbook
138
- cp node_modules/flowbook/src/skills/flowbook/SKILL.md .cursor/skills/flowbook/
139
- ```
140
-
141
- Ersetzen Sie das Verzeichnis durch den entsprechenden Pfad aus der Tabelle der kompatiblen Agenten.
142
-
143
- </details>
144
- ## Funktionsweise
145
-
146
- ```
147
- .flow.md-Dateien ──→ Vite-Plugin ──→ Virtuelles Modul ──→ React-Viewer
148
- │ │
149
- ├─ fast-glob-Scan ├─ export default { flows: [...] }
150
- ├─ gray-matter │
151
- │ Parsing └─ HMR bei Dateiänderung
152
- └─ Mermaid-Block
153
- Extraktion
154
- ```
155
-
156
- 1. **Erkennung** — `fast-glob` durchsucht das Projekt nach `*.flow.md` / `*.flowchart.md`
157
- 2. **Parsing** — `gray-matter` extrahiert YAML-Frontmatter; Regex extrahiert `` ```mermaid ``-Blöcke
158
- 3. **Virtuelles Modul** — Vite-Plugin stellt geparste Daten als `virtual:flowbook-data` bereit
159
- 4. **Rendering** — React-App rendert Mermaid-Diagramme über `mermaid.render()`
160
- 5. **HMR** — Dateiänderungen invalidieren das virtuelle Modul und lösen ein Neuladen aus
161
-
162
- ## Projektstruktur
163
-
164
- ```
165
- src/
166
- ├── types.ts # Gemeinsame Typen (FlowEntry, FlowbookData)
167
- ├── node/
168
- │ ├── cli.ts # CLI-Einstiegspunkt (init, dev, build)
169
- │ ├── server.ts # Programmatischer Vite-Server & Build
170
- │ ├── init.ts # Projekt-Initialisierungslogik
171
- │ ├── discovery.ts # Datei-Scanner (fast-glob)
172
- │ ├── parser.ts # Frontmatter + Mermaid-Extraktion
173
- │ └── plugin.ts # Vite-Plugin für virtuelles Modul
174
- └── client/
175
- ├── index.html # Einstiegs-HTML
176
- ├── main.tsx # React-Einstiegspunkt
177
- ├── App.tsx # Layout mit Suche + Seitenleiste + Viewer
178
- ├── vite-env.d.ts # Typdeklarationen für virtuelles Modul
179
- ├── styles/globals.css # Tailwind v4 + benutzerdefinierte Stile
180
- └── components/
181
- ├── Header.tsx # Logo, Suchleiste, Flow-Anzahl
182
- ├── Sidebar.tsx # Einklappbarer Kategoriebaum
183
- ├── MermaidRenderer.tsx # Mermaid-Diagramm-Rendering
184
- ├── FlowView.tsx # Einzelne Flow-Detailansicht
185
- └── EmptyState.tsx # Leerzustand mit Anleitung
186
- ```
187
-
188
- ## Entwicklung (Beitragen)
189
-
190
- ```bash
191
- git clone https://github.com/Epsilondelta-ai/flowbook.git
192
- cd flowbook
193
- npm install
194
-
195
- # Lokale Entwicklung (verwendet die Root-vite.config.ts)
196
- npm run dev
197
-
198
- # CLI erstellen
199
- npm run build
200
-
201
- # CLI lokal testen
202
- node dist/cli.js dev
203
- node dist/cli.js build
204
- ```
205
-
206
- ## Technologie-Stack
207
-
208
- - **Vite** — Entwicklungsserver mit HMR
209
- - **React 19** — Benutzeroberfläche
210
- - **Mermaid 11** — Diagramm-Rendering
211
- - **Tailwind CSS v4** — Styling
212
- - **gray-matter** — YAML-Frontmatter-Parsing
213
- - **fast-glob** — Datei-Erkennung
214
- - **tsup** — CLI-Bundler
215
- - **TypeScript** — Typsicherheit
216
-
217
- ## Lizenz
218
-
219
- MIT
package/README.es.md DELETED
@@ -1,219 +0,0 @@
1
- # Flowbook
2
-
3
- > [English](./README.md) | [한국어](./README.ko.md) | [简体中文](./README.zh-CN.md) | [日本語](./README.ja.md) | **Español** | [Português (BR)](./README.pt-BR.md) | [Français](./README.fr.md) | [Русский](./README.ru.md) | [Deutsch](./README.de.md)
4
-
5
- Storybook para diagramas de flujo. Descubre automáticamente archivos de diagramas Mermaid en tu código, los organiza por categoría y los renderiza en un visor navegable.
6
-
7
- ![Vite](https://img.shields.io/badge/vite-6.x-646CFF?logo=vite&logoColor=white)
8
- ![React](https://img.shields.io/badge/react-19.x-61DAFB?logo=react&logoColor=white)
9
- ![Mermaid](https://img.shields.io/badge/mermaid-11.x-FF3670?logo=mermaid&logoColor=white)
10
- ![TypeScript](https://img.shields.io/badge/typescript-5.x-3178C6?logo=typescript&logoColor=white)
11
-
12
- ## Inicio Rápido
13
-
14
- ```bash
15
- # Inicializar — agrega scripts + archivo de ejemplo
16
- npx flowbook@latest init
17
-
18
- # Iniciar servidor de desarrollo
19
- npm run flowbook
20
- # → http://localhost:6200
21
-
22
- # Construir sitio estático
23
- npm run build-flowbook
24
- # → flowbook-static/
25
- ```
26
-
27
- ## CLI
28
-
29
- ```
30
- flowbook init Configurar Flowbook en tu proyecto
31
- flowbook dev [--port 6200] Iniciar el servidor de desarrollo
32
- flowbook build [--out-dir d] Construir un sitio estático
33
- ```
34
-
35
- ### `flowbook init`
36
-
37
- - Agrega los scripts `"flowbook"` y `"build-flowbook"` a tu `package.json`
38
- - Crea `flows/example.flow.md` como plantilla inicial
39
-
40
- ### `flowbook dev`
41
-
42
- Inicia un servidor de desarrollo Vite en `http://localhost:6200` con HMR. Cualquier cambio en archivos `.flow.md` o `.flowchart.md` se refleja instantáneamente.
43
-
44
- ### `flowbook build`
45
-
46
- Construye un sitio estático en `flowbook-static/` (configurable con `--out-dir`). Despliégalo en cualquier lugar.
47
-
48
- ## Escribir Archivos de Flujo
49
-
50
- Crea un archivo `.flow.md` (o `.flowchart.md`) en cualquier lugar de tu proyecto:
51
-
52
- ````markdown
53
- ---
54
- title: Flujo de Login
55
- category: Autenticación
56
- tags: [auth, login, oauth]
57
- order: 1
58
- description: Flujo de autenticación de usuario con OAuth2
59
- ---
60
-
61
- ```mermaid
62
- flowchart TD
63
- A[Usuario] --> B{¿Autenticado?}
64
- B -->|Sí| C[Dashboard]
65
- B -->|No| D[Página de Login]
66
- ```
67
- ````
68
-
69
- Flowbook descubre automáticamente el archivo y lo agrega al visor.
70
-
71
- ## Esquema de Frontmatter
72
-
73
- | Campo | Tipo | Requerido | Descripción |
74
- |---------------|------------|-----------|---------------------------------------|
75
- | `title` | `string` | No | Título a mostrar (por defecto: nombre del archivo) |
76
- | `category` | `string` | No | Categoría en la barra lateral (por defecto: "Uncategorized") |
77
- | `tags` | `string[]` | No | Etiquetas filtrables |
78
- | `order` | `number` | No | Orden dentro de la categoría (por defecto: 999) |
79
- | `description` | `string` | No | Descripción en la vista detallada |
80
-
81
- ## Descubrimiento de Archivos
82
-
83
- Flowbook escanea estos patrones por defecto:
84
-
85
- ```
86
- **/*.flow.md
87
- **/*.flowchart.md
88
- ```
89
-
90
- Ignora `node_modules/`, `.git/` y `dist/`.
91
-
92
- ## Habilidad de Agente IA
93
-
94
- `flowbook init` instala automáticamente habilidades de agente IA en todos los directorios de agentes de codificación soportados.
95
- Cuando un agente de codificación (Claude Code, OpenAI Codex, VS Code Copilot, Cursor, Gemini CLI, etc.) detecta la palabra clave **"flowbook"** en tu indicación, hará:
96
-
97
- 1. Analizar tu base de código en busca de flujos lógicos (rutas API, autenticación, gestión de estado, lógica empresarial, etc.)
98
- 2. Configurar Flowbook si aún no está inicializado
99
- 3. Generar archivos `.flow.md` con diagramas Mermaid para cada flujo significativo
100
- 4. Verificar la compilación
101
-
102
- ### Instalar Habilidad via CLI
103
-
104
- También puedes instalar la habilidad de forma independiente usando [skills.sh](https://skills.sh):
105
-
106
- ```bash
107
- npx skills add Epsilondelta-ai/flowbook
108
- ```
109
-
110
- Detecta automáticamente tus agentes de codificación instalados e instala la habilidad en los directorios correctos.
111
-
112
- ### Agentes Compatibles
113
-
114
- | Agente | Ubicación de Habilidad |
115
- |-------|---------------|
116
- | Claude Code | `.claude/skills/flowbook/SKILL.md` |
117
- | OpenAI Codex | `.agents/skills/flowbook/SKILL.md` |
118
- | VS Code / GitHub Copilot | `.github/skills/flowbook/SKILL.md` |
119
- | Google Antigravity | `.agent/skills/flowbook/SKILL.md` |
120
- | Gemini CLI | `.gemini/skills/flowbook/SKILL.md` |
121
- | Cursor | `.cursor/skills/flowbook/SKILL.md` |
122
- | Windsurf (Codeium) | `.windsurf/skills/flowbook/SKILL.md` |
123
- | AmpCode | `.amp/skills/flowbook/SKILL.md` |
124
- | OpenCode / oh-my-opencode | `.opencode/skills/flowbook/SKILL.md` |
125
-
126
- <details>
127
- <summary>Instalación Manual de Habilidad</summary>
128
-
129
- Si no usaste `flowbook init` ni `npx skills add`, copia la habilidad manualmente:
130
-
131
- ```bash
132
- # Ejemplo: Claude Code
133
- mkdir -p .claude/skills/flowbook
134
- cp node_modules/flowbook/src/skills/flowbook/SKILL.md .claude/skills/flowbook/
135
-
136
- # Ejemplo: Cursor
137
- mkdir -p .cursor/skills/flowbook
138
- cp node_modules/flowbook/src/skills/flowbook/SKILL.md .cursor/skills/flowbook/
139
- ```
140
-
141
- Reemplaza el directorio con la ruta apropiada de la tabla de Agentes Compatibles.
142
-
143
- </details>
144
- ## Cómo Funciona
145
-
146
- ```
147
- archivos .flow.md ──→ Plugin Vite ──→ Módulo Virtual ──→ Visor React
148
- │ │
149
- ├─ escaneo fast-glob ├─ export default { flows: [...] }
150
- ├─ gray-matter │
151
- │ parseo └─ HMR en cambio de archivo
152
- └─ bloque mermaid
153
- extracción
154
- ```
155
-
156
- 1. **Descubrimiento** — `fast-glob` escanea el proyecto buscando `*.flow.md` / `*.flowchart.md`
157
- 2. **Parseo** — `gray-matter` extrae el frontmatter YAML; regex extrae bloques `` ```mermaid ``
158
- 3. **Módulo Virtual** — El plugin de Vite sirve los datos parseados como `virtual:flowbook-data`
159
- 4. **Renderizado** — La app React renderiza diagramas Mermaid via `mermaid.render()`
160
- 5. **HMR** — Los cambios en archivos invalidan el módulo virtual, disparando una recarga
161
-
162
- ## Estructura del Proyecto
163
-
164
- ```
165
- src/
166
- ├── types.ts # Tipos compartidos (FlowEntry, FlowbookData)
167
- ├── node/
168
- │ ├── cli.ts # Punto de entrada CLI (init, dev, build)
169
- │ ├── server.ts # Servidor Vite programático y build
170
- │ ├── init.ts # Lógica de inicialización del proyecto
171
- │ ├── discovery.ts # Escáner de archivos (fast-glob)
172
- │ ├── parser.ts # Extracción de frontmatter + mermaid
173
- │ └── plugin.ts # Plugin de módulo virtual de Vite
174
- └── client/
175
- ├── index.html # HTML de entrada
176
- ├── main.tsx # Entrada React
177
- ├── App.tsx # Layout con búsqueda + barra lateral + visor
178
- ├── vite-env.d.ts # Declaraciones de tipo del módulo virtual
179
- ├── styles/globals.css # Tailwind v4 + estilos personalizados
180
- └── components/
181
- ├── Header.tsx # Logo, barra de búsqueda, conteo de flujos
182
- ├── Sidebar.tsx # Árbol de categorías colapsable
183
- ├── MermaidRenderer.tsx # Renderizado de diagramas Mermaid
184
- ├── FlowView.tsx # Vista detallada de flujo individual
185
- └── EmptyState.tsx # Estado vacío con guía
186
- ```
187
-
188
- ## Desarrollo (Contribución)
189
-
190
- ```bash
191
- git clone https://github.com/Epsilondelta-ai/flowbook.git
192
- cd flowbook
193
- npm install
194
-
195
- # Desarrollo local (usa el vite.config.ts raíz)
196
- npm run dev
197
-
198
- # Construir CLI
199
- npm run build
200
-
201
- # Probar CLI localmente
202
- node dist/cli.js dev
203
- node dist/cli.js build
204
- ```
205
-
206
- ## Stack Tecnológico
207
-
208
- - **Vite** — Servidor de desarrollo con HMR
209
- - **React 19** — UI
210
- - **Mermaid 11** — Renderizado de diagramas
211
- - **Tailwind CSS v4** — Estilos
212
- - **gray-matter** — Parseo de frontmatter YAML
213
- - **fast-glob** — Descubrimiento de archivos
214
- - **tsup** — Bundler de CLI
215
- - **TypeScript** — Seguridad de tipos
216
-
217
- ## Licencia
218
-
219
- MIT
package/README.fr.md DELETED
@@ -1,219 +0,0 @@
1
- # Flowbook
2
-
3
- > [English](./README.md) | [한국어](./README.ko.md) | [简体中文](./README.zh-CN.md) | [日本語](./README.ja.md) | [Español](./README.es.md) | [Português (BR)](./README.pt-BR.md) | **Français** | [Русский](./README.ru.md) | [Deutsch](./README.de.md)
4
-
5
- Storybook pour les diagrammes de flux. Découvre automatiquement les fichiers de diagrammes Mermaid dans votre code, les organise par catégorie et les affiche dans un visualiseur navigable.
6
-
7
- ![Vite](https://img.shields.io/badge/vite-6.x-646CFF?logo=vite&logoColor=white)
8
- ![React](https://img.shields.io/badge/react-19.x-61DAFB?logo=react&logoColor=white)
9
- ![Mermaid](https://img.shields.io/badge/mermaid-11.x-FF3670?logo=mermaid&logoColor=white)
10
- ![TypeScript](https://img.shields.io/badge/typescript-5.x-3178C6?logo=typescript&logoColor=white)
11
-
12
- ## Démarrage Rapide
13
-
14
- ```bash
15
- # Initialiser — ajoute les scripts + fichier d'exemple
16
- npx flowbook@latest init
17
-
18
- # Démarrer le serveur de développement
19
- npm run flowbook
20
- # → http://localhost:6200
21
-
22
- # Construire le site statique
23
- npm run build-flowbook
24
- # → flowbook-static/
25
- ```
26
-
27
- ## CLI
28
-
29
- ```
30
- flowbook init Configurer Flowbook dans votre projet
31
- flowbook dev [--port 6200] Démarrer le serveur de développement
32
- flowbook build [--out-dir d] Construire un site statique
33
- ```
34
-
35
- ### `flowbook init`
36
-
37
- - Ajoute les scripts `"flowbook"` et `"build-flowbook"` à votre `package.json`
38
- - Crée `flows/example.flow.md` comme modèle de départ
39
-
40
- ### `flowbook dev`
41
-
42
- Démarre un serveur de développement Vite sur `http://localhost:6200` avec HMR. Toute modification de fichiers `.flow.md` ou `.flowchart.md` est prise en compte instantanément.
43
-
44
- ### `flowbook build`
45
-
46
- Construit un site statique dans `flowbook-static/` (configurable via `--out-dir`). Déployez-le n'importe où.
47
-
48
- ## Écrire des Fichiers de Flux
49
-
50
- Créez un fichier `.flow.md` (ou `.flowchart.md`) n'importe où dans votre projet :
51
-
52
- ````markdown
53
- ---
54
- title: Flux de Connexion
55
- category: Authentification
56
- tags: [auth, login, oauth]
57
- order: 1
58
- description: Flux d'authentification utilisateur avec OAuth2
59
- ---
60
-
61
- ```mermaid
62
- flowchart TD
63
- A[Utilisateur] --> B{Authentifié ?}
64
- B -->|Oui| C[Tableau de bord]
65
- B -->|Non| D[Page de connexion]
66
- ```
67
- ````
68
-
69
- Flowbook découvre automatiquement le fichier et l'ajoute au visualiseur.
70
-
71
- ## Schéma du Frontmatter
72
-
73
- | Champ | Type | Requis | Description |
74
- |---------------|------------|--------|----------------------------------------|
75
- | `title` | `string` | Non | Titre affiché (par défaut : nom du fichier) |
76
- | `category` | `string` | Non | Catégorie dans la barre latérale (par défaut : "Uncategorized") |
77
- | `tags` | `string[]` | Non | Tags filtrables |
78
- | `order` | `number` | Non | Ordre de tri dans la catégorie (par défaut : 999) |
79
- | `description` | `string` | Non | Description affichée dans la vue détaillée |
80
-
81
- ## Découverte des Fichiers
82
-
83
- Flowbook analyse ces motifs par défaut :
84
-
85
- ```
86
- **/*.flow.md
87
- **/*.flowchart.md
88
- ```
89
-
90
- Ignore `node_modules/`, `.git/` et `dist/`.
91
-
92
- ## Compétence Agent IA
93
-
94
- `flowbook init` installe automatiquement les compétences d'agent IA dans tous les répertoires d'agents de codage supportés.
95
- Lorsqu'un agent de codage (Claude Code, OpenAI Codex, VS Code Copilot, Cursor, Gemini CLI, etc.) détecte le mot-clé **"flowbook"** dans votre invite, il :
96
-
97
- 1. Analyse votre base de code pour les flux logiques (routes API, authentification, gestion d'état, logique métier, etc.)
98
- 2. Configure Flowbook s'il n'est pas déjà initialisé
99
- 3. Génère des fichiers `.flow.md` avec des diagrammes Mermaid pour chaque flux significatif
100
- 4. Vérifie la compilation
101
-
102
- ### Installer la Compétence via CLI
103
-
104
- Vous pouvez aussi installer la compétence indépendamment avec [skills.sh](https://skills.sh) :
105
-
106
- ```bash
107
- npx skills add Epsilondelta-ai/flowbook
108
- ```
109
-
110
- Détecte automatiquement vos agents de codage installés et installe la compétence dans les bons répertoires.
111
-
112
- ### Agents Compatibles
113
-
114
- | Agent | Emplacement de Compétence |
115
- |-------|---------------|
116
- | Claude Code | `.claude/skills/flowbook/SKILL.md` |
117
- | OpenAI Codex | `.agents/skills/flowbook/SKILL.md` |
118
- | VS Code / GitHub Copilot | `.github/skills/flowbook/SKILL.md` |
119
- | Google Antigravity | `.agent/skills/flowbook/SKILL.md` |
120
- | Gemini CLI | `.gemini/skills/flowbook/SKILL.md` |
121
- | Cursor | `.cursor/skills/flowbook/SKILL.md` |
122
- | Windsurf (Codeium) | `.windsurf/skills/flowbook/SKILL.md` |
123
- | AmpCode | `.amp/skills/flowbook/SKILL.md` |
124
- | OpenCode / oh-my-opencode | `.opencode/skills/flowbook/SKILL.md` |
125
-
126
- <details>
127
- <summary>Installation Manuelle de Compétence</summary>
128
-
129
- Si vous n'avez pas utilisé `flowbook init` ni `npx skills add`, copiez la compétence manuellement :
130
-
131
- ```bash
132
- # Exemple : Claude Code
133
- mkdir -p .claude/skills/flowbook
134
- cp node_modules/flowbook/src/skills/flowbook/SKILL.md .claude/skills/flowbook/
135
-
136
- # Exemple : Cursor
137
- mkdir -p .cursor/skills/flowbook
138
- cp node_modules/flowbook/src/skills/flowbook/SKILL.md .cursor/skills/flowbook/
139
- ```
140
-
141
- Remplacez le répertoire par le chemin approprié du tableau des Agents Compatibles.
142
-
143
- </details>
144
- ## Fonctionnement
145
-
146
- ```
147
- fichiers .flow.md ──→ Plugin Vite ──→ Module Virtuel ──→ Visualiseur React
148
- │ │
149
- ├─ scan fast-glob ├─ export default { flows: [...] }
150
- ├─ gray-matter │
151
- │ parsing └─ HMR sur modification de fichier
152
- └─ bloc mermaid
153
- extraction
154
- ```
155
-
156
- 1. **Découverte** — `fast-glob` analyse le projet à la recherche de `*.flow.md` / `*.flowchart.md`
157
- 2. **Parsing** — `gray-matter` extrait le frontmatter YAML ; regex extrait les blocs `` ```mermaid ``
158
- 3. **Module Virtuel** — Le plugin Vite sert les données parsées comme `virtual:flowbook-data`
159
- 4. **Rendu** — L'application React rend les diagrammes Mermaid via `mermaid.render()`
160
- 5. **HMR** — Les modifications de fichiers invalident le module virtuel, déclenchant un rechargement
161
-
162
- ## Structure du Projet
163
-
164
- ```
165
- src/
166
- ├── types.ts # Types partagés (FlowEntry, FlowbookData)
167
- ├── node/
168
- │ ├── cli.ts # Point d'entrée CLI (init, dev, build)
169
- │ ├── server.ts # Serveur Vite programmatique et build
170
- │ ├── init.ts # Logique d'initialisation du projet
171
- │ ├── discovery.ts # Scanner de fichiers (fast-glob)
172
- │ ├── parser.ts # Extraction frontmatter + mermaid
173
- │ └── plugin.ts # Plugin de module virtuel Vite
174
- └── client/
175
- ├── index.html # HTML d'entrée
176
- ├── main.tsx # Entrée React
177
- ├── App.tsx # Layout avec recherche + barre latérale + visualiseur
178
- ├── vite-env.d.ts # Déclarations de type du module virtuel
179
- ├── styles/globals.css # Tailwind v4 + styles personnalisés
180
- └── components/
181
- ├── Header.tsx # Logo, barre de recherche, nombre de flux
182
- ├── Sidebar.tsx # Arbre de catégories repliable
183
- ├── MermaidRenderer.tsx # Rendu des diagrammes Mermaid
184
- ├── FlowView.tsx # Vue détaillée d'un flux individuel
185
- └── EmptyState.tsx # État vide avec guide
186
- ```
187
-
188
- ## Développement (Contribution)
189
-
190
- ```bash
191
- git clone https://github.com/Epsilondelta-ai/flowbook.git
192
- cd flowbook
193
- npm install
194
-
195
- # Développement local (utilise le vite.config.ts racine)
196
- npm run dev
197
-
198
- # Construire le CLI
199
- npm run build
200
-
201
- # Tester le CLI localement
202
- node dist/cli.js dev
203
- node dist/cli.js build
204
- ```
205
-
206
- ## Stack Technique
207
-
208
- - **Vite** — Serveur de développement avec HMR
209
- - **React 19** — Interface utilisateur
210
- - **Mermaid 11** — Rendu de diagrammes
211
- - **Tailwind CSS v4** — Stylisation
212
- - **gray-matter** — Parsing de frontmatter YAML
213
- - **fast-glob** — Découverte de fichiers
214
- - **tsup** — Bundler CLI
215
- - **TypeScript** — Sûreté de type
216
-
217
- ## Licence
218
-
219
- MIT