Visual Kanban. Plaintext Soul. No Cloud.
Local-first Kanban over Markdown — your files are the database. No account, no cloud sync: open void.html, pick a folder, own your data.
Void.md is plaintext infrastructure: kanban.md and archive.md live where you put them (disk, repo, backup). The browser only reads/writes files you authorize via the File System Access API. There is no hosted backend — storage is local. Suitable for air-gapped workflows and Git-friendly task history.
This is the core branch — the stable engine. Minimal surface area, no experimental features. The foundation that production and experimental build on.
| Branch | Purpose |
|---|---|
core (you are here) |
Stable Kanban engine — minimal, reliable |
production |
User-facing stable line with full features |
experimental |
Fast-moving feature work (themes, rich text, etc.) |
- Chrome 86+, Edge 86+, or Opera 72+ (File System Access API required)
- Firefox and Safari not supported
The standalone package is at core-package/:
- Copy the
core-package/folder to your project. - Open
void.htmlin a supported browser. - Select the folder containing
kanban.mdandarchive.md.
See core-package/HOW-TO-RUN.md for detailed instructions.
git clone https://github.com/apexnova-dev/Void.md.git
git checkout core
open void.html # macOS
xdg-open void.html # Linux
start void.html # Windows| Feature | Status |
|---|---|
| Interactive Kanban board with drag & drop | ✅ Stable |
| Task CRUD (create, read, update, delete) | ✅ Stable |
| Rich metadata (priority, category, tags, dates, assignment) | ✅ Stable |
| Subtasks with progress bar | ✅ Stable |
| Advanced filters (priority, tags, category, user) | ✅ Stable |
| Global search (active + archived tasks) | ✅ Stable |
| Archive system with search & restore | ✅ Stable |
| Multi-project support (last 10 remembered) | ✅ Stable |
| Auto-save on every change | ✅ Stable |
| Dark mode (Neon City — cyan/magenta accents) | ✅ Stable |
| Light / Dark theme toggle | ✅ Stable |
| Language support (English, French) | ✅ Stable |
| Responsive layout | ✅ Stable |
| Accessibility (ARIA labels, focus management, scroll lock) | ✅ Stable |
| Security (CSP headers, XSS prevention) | ✅ Stable |
| Feature badges with glow effects | ✅ Stable |
| AI integration (structured markdown task format) | ✅ Stable |
Experimental features (rich text editor, comments, slash commands) exist in the code behind feature flags but are disabled by default on core. Switch to the experimental branch to work with them.
Void.md/
├── void.html # Single-file application (~144KB)
├── core-package/ # Standalone portable package
│ ├── void.html # (mirrors root void.html)
│ ├── kanban.md # Task board template
│ ├── archive.md # Archive template
│ ├── HOW-TO-RUN.md # User setup guide
│ ├── AI_GUIDE.md # AI assistant guide
│ └── README.md # Package overview
├── docs/
│ ├── README.md # Documentation index
│ ├── AI_WORKFLOW.md # Canonical markdown task protocol
│ ├── architecture/ # Tests, design docs, overview
│ └── ...
├── AGENTS.md # Build/test commands and code style
├── CHANGELOG.md # Version history
├── scripts/ # Browser test runner
└── .github/ # CI workflows (lint, tests, pages)
- Read
docs/AI_WORKFLOW.mdfor the canonical markdown task format. - Read
core-package/AI_GUIDE.mdfor the portable summary. - Read
AGENTS.mdfor build/test commands and code style.
- Column IDs required:
**Columns**: 📝 To Do (todo) | 🚀 In Progress (in-progress) | ✅ Done (done)— each column must have a parenthesized(id). - No
##or###inside task bodies — breaks parsing. - Archive only on user request — never automatically.
- Tables are NOT tasks — only
### TASK-XXX |creates cards on the board.
Available in docs/ai-templates/:
CLAUDE.md.exemple— Claude / Claude CodeCOPILOT.md.exemple— GitHub CopilotCHATGPT.md.exemple— ChatGPTGEMINI.md.exemple— GeminiQWEN.md.exemple— QwenCODEIUM.md.exemple— Windsurf / CodeiumOPENAI_CLI.md.exemple— OpenAI CLI
# Kanban Board
## ⚙️ Configuration
**Columns**: 📝 To Do (todo) | 🚀 In Progress (in-progress) | ✅ Done (done)
**Categories**: Frontend, Backend, Design
**Users**: @alice, @bob
**Tags**: #bug, #feature, #docs
## 📝 To Do
## 🚀 In Progress
## ✅ Done# Task Archive
> Archived tasks
## ✅ Archives**Columns**: 📝 Backlog (backlog) | 🔍 Analysis (analysis) | 🚀 Dev (dev) | 👀 Review (review) | ✅ Done (done)Format: Emoji Name (id) | ... — each column needs a parenthesized id. The name before (id) must match the ## column heading exactly.
### TASK-001 | Task title
**Priority**: High | **Category**: Frontend | **Assigned**: @alice
**Created**: 2025-01-20 | **Due**: 2025-02-01
**Tags**: #feature #ui
Description...
**Subtasks**:
- [ ] Subtask 1
- [x] Completed subtask
**Notes**:
Work in progress...
**Result**:
What was accomplished.5 required fields:
### TASK-XXX | Title— task ID + title**Priority**: X— priority level**Category**: X— category**Created**: YYYY-MM-DD— creation date- Body content — description or at least an empty line
3 forbidden patterns:
- ❌ No
##or###inside task bodies - ❌ No headings other than the task heading itself
- ❌ Never use
##level for column sections (always###for tasks)
- Core Kanban, task management, filters, archives, multi-project
- Dark mode with 7-level color hierarchy
- Neon City brand identity
- AI workflow documentation
- Accessibility improvements
- Security hardening (CSP, SRI hashes)
- Keyboard shortcuts
- PDF/HTML export
- Visual statistics
- See
experimentalbranch for in-progress features
Mozilla Public License 2.0 (MPL-2.0)
Void.md — Core branch. Stable Kanban engine. v1.3.3