@pi-unipi/kanboard 0.1.8 → 2.0.0

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.
Files changed (2) hide show
  1. package/README.md +36 -81
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,58 +1,27 @@
1
1
  # @pi-unipi/kanboard
2
2
 
3
- Visualization layer for unipi workflow data. Kanboard provides an HTTP server with htmx + Alpine.js UI, modular parsers for all workflow document types, two web pages (Milestones + Workflow), a TUI overlay with tasks list and kanban board, and a doctor skill for parser diagnostics.
3
+ Visualization for workflow data. An HTTP server with htmx + Alpine.js UI shows your milestones, specs, plans, and tasks in a web browser. A TUI overlay gives you a kanban board without leaving Pi.
4
4
 
5
- ## Quick Start
5
+ Parses 8 document types from `.unipi/docs/` — specs, plans, milestones, quick-work, debug, fix, chore, and review — and renders them as cards with progress indicators.
6
6
 
7
- ```bash
8
- # Start the kanboard server
9
- /unipi:kanboard
7
+ ## Commands
10
8
 
11
- # Diagnose parser issues
12
- /unipi:kanboard-doctor
13
- ```
14
-
15
- ## Architecture
16
-
17
- ```
18
- kanboard/
19
- ├── server/ # HTTP server with port allocation
20
- │ ├── index.ts # Server core (KanboardServer class)
21
- │ └── routes/ # Route handlers (milestone, workflow)
22
- ├── parser/ # Document parsers
23
- │ ├── index.ts # ParserRegistry + createDefaultRegistry()
24
- │ ├── specs.ts # Spec parser (checklist items)
25
- │ ├── plans.ts # Plan parser (task statuses)
26
- │ ├── milestones.ts # Milestone parser
27
- │ └── remaining.ts # Quick-work, debug, fix, chore, review
28
- ├── ui/ # Web UI
29
- │ ├── layouts/ # Base HTML layout
30
- │ ├── static/ # CSS + JS (style.css, app.js)
31
- │ ├── components/ # Reusable components
32
- │ ├── milestone/ # Milestone page renderer
33
- │ └── workflow/ # Workflow page renderer
34
- ├── tui/ # TUI overlay
35
- │ └── kanboard-overlay.ts
36
- ├── skills/ # Skills
37
- │ └── kanboard-doctor/ # Parser diagnostics
38
- ├── commands.ts # Command registration
39
- ├── types.ts # Shared TypeScript types
40
- └── index.ts # Extension entry point
41
- ```
9
+ | Command | Description |
10
+ |---------|-------------|
11
+ | `/unipi:kanboard` | Toggle kanboard server on/off |
12
+ | `/unipi:kanboard-doctor` | Diagnose and fix parser issues |
42
13
 
43
14
  ## Web Pages
44
15
 
45
16
  ### Milestones (`/`)
46
- - Displays MILESTONES.md phases with progress bars
47
- - Checklist items with status indicators (done, ○ todo)
17
+ - Phases with progress bars
18
+ - Checklist items with status indicators (done/todo)
48
19
  - Collapsible sections per phase
49
- - Copy-to-clipboard for `/unipi:milestone-update`
50
20
 
51
21
  ### Workflow (`/workflow`)
52
- - Cards grouped by document type (specs, plans, fixes, etc.)
22
+ - Cards grouped by document type
53
23
  - Progress indicators per card
54
- - Alpine.js filtering by status (All, To Do, In Progress, Done)
55
- - Copy-to-clipboard for relevant commands
24
+ - Filtering by status (All, To Do, In Progress, Done)
56
25
 
57
26
  ## TUI Overlay
58
27
 
@@ -62,26 +31,23 @@ Two tabs accessible via the kanboard overlay:
62
31
  - **Board** — Kanban columns (To Do / In Progress / Done)
63
32
 
64
33
  ### Controls
65
- - `j/k` — Navigate up/down
66
- - `h/l` — Switch columns (Board tab)
67
- - `Tab` or `b` — Switch between Tasks/Board tabs
68
- - `t` — Switch to Tasks tab
69
- - `gg/G` — Jump to top/bottom
70
- - `q/Esc` — Close overlay
71
34
 
72
- ## API Endpoints
35
+ | Key | Action |
36
+ |-----|--------|
37
+ | `j/k` | Navigate up/down |
38
+ | `h/l` | Switch columns (Board tab) |
39
+ | `Tab` or `b` | Switch between Tasks/Board tabs |
40
+ | `t` | Switch to Tasks tab |
41
+ | `gg/G` | Jump to top/bottom |
42
+ | `q/Esc` | Close overlay |
73
43
 
74
- | Method | Path | Description |
75
- |--------|------|-------------|
76
- | GET | `/` | Milestone page |
77
- | GET | `/workflow` | Workflow page |
78
- | GET | `/api/milestones` | Milestone JSON data |
79
- | GET | `/api/workflow` | Workflow JSON data |
80
- | POST | `/api/docs/:type/:file/items/:line` | Update item status |
44
+ ## Special Triggers
45
+
46
+ Kanboard registers with the info-screen dashboard, showing document count, tasks done, total tasks, and completion percentage. The footer subscribes to kanboard registry data to display task stats in the status bar.
81
47
 
82
48
  ## Parser System
83
49
 
84
- Kanboard parses 8 document types from `.unipi/docs/`:
50
+ Kanboard parses 8 document types:
85
51
 
86
52
  | Type | Directory | What's Parsed |
87
53
  |------|-----------|---------------|
@@ -94,29 +60,21 @@ Kanboard parses 8 document types from `.unipi/docs/`:
94
60
  | Chore | `chore/` | Chore steps as checklist items |
95
61
  | Review | `reviews/` | Review remarks as checklist items |
96
62
 
97
- ### Parser Warnings
98
-
99
- Parsers are resilient — they collect warnings per file and return partial results:
100
- - Empty checkbox text
101
- - Malformed checkboxes
102
- - Missing frontmatter
103
- - Unparseable lines
104
-
105
- Warnings are surfaced in the kanboard-doctor skill.
63
+ Parsers are resilient — they collect warnings per file and return partial results. Warnings are surfaced in the kanboard-doctor skill.
106
64
 
107
- ## Doctor Skill
108
-
109
- The `kanboard-doctor` skill runs all parsers and produces a diagnostic report:
65
+ ## API Endpoints
110
66
 
111
- 1. **Run All Parsers** Parse every document
112
- 2. **Collect Errors** — Group warnings by file
113
- 3. **Present Report** Structured error listing
114
- 4. **Fix One by One** Suggest fixes, ask user to confirm
115
- 5. **Re-validate** Re-run parser after each fix
67
+ | Method | Path | Description |
68
+ |--------|------|-------------|
69
+ | GET | `/` | Milestone page |
70
+ | GET | `/workflow` | Workflow page |
71
+ | GET | `/api/milestones` | Milestone JSON data |
72
+ | GET | `/api/workflow` | Workflow JSON data |
73
+ | POST | `/api/docs/:type/:file/items/:line` | Update item status |
116
74
 
117
- ## Server Configuration
75
+ ## Configurables
118
76
 
119
- Default configuration (from `@pi-unipi/core`):
77
+ Default port configuration from `@pi-unipi/core`:
120
78
 
121
79
  ```typescript
122
80
  KANBOARD_DEFAULTS = {
@@ -128,10 +86,7 @@ KANBOARD_DEFAULTS = {
128
86
  - Port allocation: tries 8165, increments on EADDRINUSE
129
87
  - PID file: `.unipi/kanboard.pid`
130
88
  - Graceful shutdown on SIGINT/SIGTERM
131
- - Static files served from `ui/static/`
132
89
 
133
- ## Dependencies
90
+ ## License
134
91
 
135
- - `@pi-unipi/core` — Shared constants and utilities
136
- - `@mariozechner/pi-coding-agent` — Extension API
137
- - `@mariozechner/pi-tui` — TUI overlay API
92
+ MIT
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-unipi/kanboard",
3
- "version": "0.1.8",
3
+ "version": "2.0.0",
4
4
  "description": "Visualization layer for unipi workflow — HTTP server with htmx/Alpine.js UI, modular parsers, TUI overlay, and kanban board",
5
5
  "type": "module",
6
6
  "license": "MIT",