Kanban task manager based on local Markdown files
A complete task management system that transforms your Markdown files into an interactive Kanban board, without database or server. Perfect for developers, distributed teams and integration with AI assistants.
Overview of the Markdown Task Manager interface with Kanban board, filters, and task management
Markdown Task Manager is a standalone web application contained in a single HTML file (task-manager.html). It uses the browser's File System Access API to read and write directly to your local Markdown files.
┌─────────────────────┐
│ task-manager.html │ ← Single HTML file
└──────────┬──────────┘
│
▼
┌──────────────┐
│ Browser │ ← Chrome, Edge, Opera
└──────┬───────┘
│
▼
┌──────────────┐
│ Your files │ ← kanban.md + archive.md
│ Markdown │ (on your disk)
└──────────────┘
Advantages:
- ✅ Single file: Easy to copy, share and maintain
- ✅ 100% local: Your data stays on your machine
- ✅ Git compatible: Versionable, syncable, diffable
- ✅ Plain text readable: Editable with any editor
- ✅ No server: Works entirely in the browser
- ✅ Multi-project: Manage multiple projects with history
- Compatible browser: Chrome 86+, Edge 86+ or Opera 72+
- File System Access API is not available on Firefox or Safari
- Download
task-manager.htmlfrom this repository - Open it in your browser (double-click)
- Select a folder to store your tasks
That's all! 🎉
On first launch:
- The application requests access to a folder
- If the folder is empty, it automatically creates:
kanban.md- Your active tasksarchive.md- Your archived tasks
- You can give a name to the project
- The project is remembered for next sessions
Simply copy 2 files to your project root:
my-project/
├── kanban.md # ← Create this file (see template below)
├── archive.md # ← Create this file (see template below)
├── src/
├── package.json
└── README.mdMinimal kanban.md template:
# Kanban Board
## ⚙️ Configuration
**Columns**: 📝 To Do | 🚀 In Progress | ✅ Done
**Categories**: Frontend, Backend, Design
**Users**: @alice, @bob
**Tags**: #bug, #feature, #docs
## 📝 To Do
## 🚀 In Progress
## ✅ DoneMinimal archive.md template:
# Task Archive
> Archived tasks from the project
## ✅ ArchivesThen:
- Open
task-manager.htmlin your browser - Select the
my-project/folder - Start creating tasks!
If you prefer to isolate task files:
my-project/
├── .tasks/ # ← or docs/tasks/, .kanban/, etc.
│ ├── kanban.md
│ └── archive.md
├── src/
└── package.jsonThen, select the .tasks/ folder when opening the application.
If you don't want to version your tasks:
# .gitignore
kanban.md
archive.md
# or
.tasks/Note: It is generally recommended to version task files to keep history and sync with the team.
You have 2 options to manage task-manager.html:
project-1/
├── task-manager.html # ← Local copy
├── kanban.md
└── archive.md
project-2/
├── task-manager.html # ← Local copy
├── kanban.md
└── archive.mdAdvantages:
- ✅ Complete autonomy for each project
- ✅ Works even if central file is modified
- ✅ Can be versioned with the project
Disadvantages:
- ❌ HTML file duplication
- ❌ Manual update in each project
~/tools/
└── task-manager.html # ← Single copy
~/projects/
├── project-1/
│ ├── kanban.md
│ └── archive.md
├── project-2/
│ ├── kanban.md
│ └── archive.md
└── project-3/
├── kanban.md
└── archive.mdAdvantages:
- ✅ Single file to maintain
- ✅ Automatic updates for all projects
- ✅ Disk space savings
Disadvantages:
- ❌ Dependency on external file
How to use it:
- Keep
task-manager.htmlin an accessible folder (e.g.,~/tools/) - Create a shortcut/bookmark in your browser
- Open it and select the desired project folder
- The application remembers the last 10 projects
Tip: Create an alias to open it quickly:
# ~/.bashrc or ~/.zshrc
alias tasks='open ~/tools/task-manager.html' # macOS
alias tasks='xdg-open ~/tools/task-manager.html' # Linux
alias tasks='start ~/tools/task-manager.html' # WindowsThis system is designed to work with AI assistants to achieve complete traceability of work done.
AI assistants (Claude, ChatGPT, Copilot, Gemini, etc.) can:
- ✅ Create tasks with strict format in
kanban.md - ✅ Break down complex tasks into subtasks
- ✅ Update progress in real time
- ✅ Document complete result in
**Notes**: - ✅ Reference tasks in Git commits (
TASK-XXX) - ✅ Archive on demand only (not automatically)
Each AI has its own configuration file that should reference AI_WORKFLOW.md:
| AI Assistant | Configuration File | Location |
|---|---|---|
| Claude (Anthropic) | CLAUDE.md |
Project root |
| GitHub Copilot (Microsoft) | copilot-instructions.md |
.github/ |
| OpenAI CLI (GPT-4, GPT-3.5) | OPENAI_CLI.md |
Project root |
| ChatGPT (OpenAI Web/Desktop) | CHATGPT.md or Custom GPT |
Root or Web |
| Gemini (Google) | GEMINI.md or instructions.md |
Root or .gemini/ |
| Qwen (Alibaba) | QWEN.md or .qwenrc |
Project root |
| Codeium / Windsurf | instructions.md |
.windsurf/ or .codeium/ |
Available templates:
CLAUDE.md.exempleCOPILOT.md.exempleCHATGPT.md.exempleGEMINI.md.exempleQWEN.md.exempleCODEIUM.md.exempleOPENAI_CLI.md.exemple
Step 1: Copy base files
# Required files
cp AI_WORKFLOW.md your-project/
cp kanban.md your-project/
cp archive.md your-project/Step 2: Configure your preferred AI
For Claude:
cp CLAUDE.md.exemple your-project/CLAUDE.mdFor Claude Code (CLI): A dedicated skill is available!
# Copy the skill directory (metadata lives in SKILL.md)
cp -R .claude/skills/markdown-task-manager ~/.claude/skills/
# Restart Claude Code to activate the skillClaude Code reads the SKILL.md metadata inside this directory, which is why the whole folder must be copied. The markdown-task-manager skill enables Claude Code to automatically manage your tasks with the required strict format. Once installed globally, it's available across all your projects.
Using the Claude Code skill:
Once the skill is installed and Claude Code is restarted, the skill will automatically detect projects containing kanban.md and archive.md. You can simply ask:
- "Create a task to implement authentication"
- "Update TASK-007 with results"
- "List all tasks in progress"
- "Archive completed tasks"
Claude Code will automatically follow the strict format and manage your tasks correctly.
For GitHub Copilot:
mkdir -p your-project/.github
cp COPILOT.md.exemple your-project/.github/copilot-instructions.mdFor ChatGPT:
cp CHATGPT.md.exemple your-project/CHATGPT.mdFor Gemini:
mkdir -p your-project/.gemini
cp GEMINI.md.exemple your-project/.gemini/instructions.mdFor Windsurf / Codeium:
mkdir -p your-project/.windsurf
cp CODEIUM.md.exemple your-project/.windsurf/instructions.mdFor OpenAI CLI:
cp OPENAI_CLI.md.exemple your-project/OPENAI_CLI.mdFor Qwen:
cp QWEN.md.exemple your-project/QWEN.mdStep 3: Final structure
your-project/
├── AI_WORKFLOW.md # ← General guidelines for all AIs
├── CLAUDE.md # ← Claude configuration (optional)
├── .github/
│ └── copilot-instructions.md # ← Copilot configuration (optional)
├── .gemini/
│ └── instructions.md # ← Gemini configuration (optional)
├── .windsurf/
│ └── instructions.md # ← Windsurf configuration (optional)
├── kanban.md # ← Active tasks
├── archive.md # ← Archived tasks
└── src/For Claude:
"Read CLAUDE.md and use the task system"
For GitHub Copilot:
@workspace Read AI_WORKFLOW.md and create a task for [feature]
For ChatGPT:
- Upload
CHATGPT.mdandAI_WORKFLOW.md - Say:
"Read these files and use the task system"
For Gemini:
@workspace Read AI_WORKFLOW.md and plan [feature]
For Windsurf / Codeium:
Read AI_WORKFLOW.md and create TASK-001 for [feature]
For OpenAI CLI:
openai --system-file OPENAI_CLI.md "Read AI_WORKFLOW.md and create a task for [feature]"For Qwen:
qwen --system-file QWEN.md "Read AI_WORKFLOW.md and plan [feature]"The AI will:
- ✅ Read
AI_WORKFLOW.mdto understand format and workflow - ✅ Create tasks in
kanban.mdwith strict format - ✅ Move tasks between columns according to progress
- ✅ Check off subtasks as they are completed
- ✅ Document complete result in
**Notes**: - ✅ Reference tasks in Git commits
- ✅ Leave completed tasks in "✅ Done" (archiving on request only)
With this system, you have:
- 📝 Complete history: Every AI action is documented
- 🔍 Easy search: Grep in Markdown files
- 📊 Statistics: Velocity, time spent, progress
- 🔗 Git links: Commits reference tasks
- 👥 Collaboration: Entire team sees what AI does
- 📦 Archives: Nothing is lost, everything is archived
# Planning
"Plan [feature]"
"Create roadmap for 3 months"
# Execution
"Do TASK-XXX"
"Continue TASK-XXX"
# Tracking
"Where are we?"
"Weekly status"
# Modifications
"Break down TASK-XXX"
"Add subtask to TASK-XXX"
# Search
"Search in archives: [keyword]"
# Maintenance
"Archive completed tasks"
Interactive Kanban board with drag & drop, customizable columns, and task counters
- Customizable columns: Create and organize your own columns
- Default: 📝 To Do, 🚀 In Progress, 👀 Review, ✅ Done
- Modifiable via "⚙️ Columns" button
- Drag & Drop: Move tasks between columns by dragging
- Adaptive layout: Centered columns using full screen width
- Counters: Number of tasks displayed in each column
Complete task creation and editing modal with all metadata fields and subtasks
Creation:
- Complete form with all fields
- Auto-generated ID (TASK-XXX)
- Required field validation
Rich metadata:
- Title: Unique identifier and short description
- Priority: Critical, High, Medium, Low (color coded)
- Category: Customizable (Frontend, Backend, etc.)
- Assignment: Multiple users possible (@user1, @user2)
- Tags: Multiple tags (#bug, #feature, etc.)
- Dates: Creation, start, due, end
- Description: Free text with Markdown support
Subtasks:
- Create, edit, delete subtasks
- Check/uncheck in real time
- Visual progress bar
- Counter (e.g., "3/5 subtasks completed")
Editing:
- Detailed editing modal for each task
- Modification of all fields
- Instant preview
- Auto-save
Advanced filtering system with priority, tags, categories, and users filters
4 types of cumulative filters:
-
Priority 🔴🟡🟢 (color-coded badges)
- Filter by task priority level
- Options: Critical, High, Medium, Low
- Quickly identify urgent tasks
-
Tags 🔵 (blue bubbles)
- Filter by one or more tags
- Example: #bug, #urgent, #backend
-
Categories 🟣 (purple bubbles)
- Filter by task category
- Example: Frontend, Backend, Design
-
Users 🟢 (green bubbles)
- Filter by assignment
- Example: @alice, @bob
How it works:
- Select a filter via dropdowns
- Click on a badge in a task to filter instantly
- Combine multiple filters (AND logic)
- Remove a filter individually (✕ on bubble)
- Clear all filters at once
Smart autocomplete:
- Filters remember history
- Even archived values remain available
- Contextual suggestions during input
Archive view showing completed tasks with search and restoration capabilities
Archiving:
- Move completed tasks to
archive.md - Manual archiving (button in task)
- Organization by sections (e.g., by month, by sprint)
Consultation:
- Dedicated archive view ("📦 Archives" button)
- Search in archives
- Detailed display of each archived task
Restoration:
- Restore a task to kanban
- Task returns to its original column
- Metadata preserved
Persistent history:
- Tags/categories/users from archived tasks remain in autocomplete
- Allows maintaining consistency between projects
Powerful search functionality:
- Search across all active tasks
- Search through archived tasks
- Real-time filtering as you type
- Search in task titles, descriptions, and metadata
Search features:
- Find tasks by ID (e.g., "TASK-042")
- Search by keywords in title or description
- Filter results by column
- View archived tasks matching your search
Accessibility:
- Quick access via search button in header
- Dedicated search modal
- Clear results presentation
Multi-language support:
- English and French languages available
- Language selector in application settings
- Complete interface translation
- Seamless language switching
Translated elements:
- All UI buttons and labels
- Form fields and placeholders
- Column names and status messages
- Help text and instructions
- Error messages and notifications
Note: The markdown files (kanban.md, archive.md) content remains in your chosen language.
Quick project switcher showing recent projects with custom names
Project management:
- Memorization of last 10 projects used
- Quick selector in header (dropdown)
- Custom names for each project
- Memorized file paths
Navigation:
- Instant project change
- Auto-restore last project on launch
- "✏️" button to rename current project
Storage:
- Uses IndexedDB to store directory handles
- No need to re-select folder each time
- Persistent browser permissions
- Immediate save: Each modification is written instantly
- No "Save" button: Everything is automatic
- Synchronization: Markdown files always stay up to date
- External editing compatible: You can edit files manually
- Export: Your Markdown files are already exported!
- Theme: Modern and clean interface
- Responsive: Works on different screen sizes
- Keyboard shortcuts: Quick navigation (coming soon)
- Dark mode: Light/dark toggle (coming soon)
your-project/
├── kanban.md # Active tasks (required)
├── archive.md # Archived tasks (required)
├── AI_WORKFLOW.md # Guidelines for AI (optional)
└── [AI file].md # Specific AI configuration (optional)
# Kanban Board
<!-- Config: Last Task ID: 42 -->
## ⚙️ Configuration
**Columns**: 📝 To Do (todo) | 🚀 In Progress (in-progress) | ✅ Done (done)
**Categories**: Frontend, Backend, Design
**Users**: @alice (Alice Martin), @bob (Bob Smith)
**Tags**: #bug, #feature, #docs, #refactor
---
## 📝 To Do
### TASK-001 | My first task
**Priority**: High | **Category**: Frontend | **Assigned**: @alice
**Created**: 2025-01-20 | **Due**: 2025-02-01
**Tags**: #feature #ui
Task description...
**Subtasks**:
- [ ] First subtask
- [x] Completed subtask
- [ ] Last subtask
## 🚀 In Progress
### TASK-002 | Other task
...
## ✅ Done
### TASK-003 | Completed task
...# Task Archive
> Archived tasks from project My Project
## ✅ January 2025
### TASK-042 | Implement notification system
**Priority**: High | **Category**: Backend | **Assigned**: @alice
**Created**: 2025-01-15 | **Started**: 2025-01-18 | **Finished**: 2025-01-22
**Tags**: #feature #notifications
Real-time notification system with WebSockets.
**Subtasks**:
- [x] Setup WebSocket server
- [x] Create REST API
- [x] Implement email sending
- [x] Notifications UI
- [x] End-to-end tests
**Notes**:
**Result**:
✅ Functional notification system with WebSocket, REST API and emails.
**Modified files**:
- src/websocket/server.js (lines 1-150)
- src/api/notifications.js (lines 20-85)
- src/ui/NotificationPanel.jsx (lines 1-200)
**Technical decisions**:
- Socket.io for WebSockets (simpler than native ws)
- SendGrid for emails (100/day free quota)
- 30-day history in MongoDB
**Tests performed**:
- ✅ 100 simultaneous connections OK
- ✅ Automatic reconnection after disconnect
- ✅ Emails sent in < 2s
---
## ✅ December 2024
### TASK-001 | Old archived task
...┌─────────────────────────────────────────────────────────────────┐
│ 📋 Task Manager [Project ▼] [✏️] [📁] [➕] [📦] [⚙️] │
└─────────────────────────────────────────────────────────────────┘
Buttons:
- [Project ▼]: Recent project selector
- [✏️]: Rename current project
- [📁 Open folder]: Select/change folder
- [➕ New task]: Create a task
- [📦 Archives]: View archived tasks
- [⚙️ Columns]: Manage Kanban columns
┌─────────────────────────────────────────────────────────────────┐
│ Tags: [Select ▼] [+] Category: [Select ▼] [+] User: [▼] │
│ │
│ 🔵 #bug ✕ 🔵 #urgent ✕ 🟣 Frontend ✕ 🟢 @alice ✕ │
└─────────────────────────────────────────────────────────────────┘
┌──────────────┬──────────────┬──────────────┬──────────────┐
│ 📝 To Do │ 🚀 Progress │ 👀 Review │ ✅ Done │
│ (3) │ (2) │ (1) │ (5) │
├──────────────┼──────────────┼──────────────┼──────────────┤
│ ┌──────────┐ │ ┌──────────┐ │ ┌──────────┐ │ ┌──────────┐ │
│ │ TASK-001 │ │ │ TASK-004 │ │ │ TASK-007 │ │ │ TASK-008 │ │
│ │ Title... │ │ │ Title... │ │ │ Title... │ │ │ Title... │ │
│ │ │ │ │ │ │ │ │ │ │ │ │
│ │ 🔴 Crit. │ │ │ 🟡 Med. │ │ │ 🟢 Low │ │ │ ✅ Done │ │
│ │ 🟣 Front │ │ │ 🟣 Back │ │ │ 🟣 Front │ │ │ 🟣 Back │ │
│ │ 🟢 @alice│ │ │ 🟢 @bob │ │ │ 🟢 @alice│ │ │ 🟢 @alice│ │
│ │ │ │ │ │ │ │ │ │ │ │ │
│ │ ▓▓▓░░ 3/5│ │ │ ▓▓▓▓░ 4/5│ │ │ ▓▓▓▓▓ 5/5│ │ │ │ │
│ │ [✏️] │ │ │ [✏️] │ │ │ [✏️] │ │ │ [✏️] │ │
│ └──────────┘ │ └──────────┘ │ └──────────┘ │ └──────────┘ │
│ │ │ │ │
│ ┌──────────┐ │ │ │ │
│ │ TASK-002 │ │ │ │ │
│ │ ... │ │ │ │ │
│ └──────────┘ │ │ │ │
└──────────────┴──────────────┴──────────────┴──────────────┘
┌──────────────────────────────────────────────┐
│ TASK-042 | Implement notification system │
├──────────────────────────────────────────────┤
│ Priority: 🟡 High │
│ Category: 🟣 Backend │
│ Assigned: 🟢 @alice, @bob │
│ Created: 2025-01-15 │
│ Due: 2025-02-01 │
│ Tags: 🔵 #feature #notifications │
├──────────────────────────────────────────────┤
│ Detailed task description... │
│ │
│ Subtasks (3/5): │
│ ☑ Setup WebSocket server │
│ ☑ Create REST API │
│ ☑ Implement email sending │
│ ☐ Notifications UI │
│ ☐ End-to-end tests │
├──────────────────────────────────────────────┤
│ [Edit] [Archive] [Delete] [Close] │
└──────────────────────────────────────────────┘
Customize your columns in kanban.md:
**Columns**: 📝 Backlog (backlog) | 🔍 Analysis (analysis) | 🚀 Dev (dev) | 👀 Review (review) | ✅ Done (done)Format: Emoji Name (id) | ...
Examples:
- Simple development:
To Do | In Progress | Done - Scrum:
Backlog | Sprint | In Progress | Review | Done - Extended Kanban:
Icebox | Backlog | Analysis | Dev | QA | Deploy | Done
Define your project categories:
**Categories**: Frontend, Backend, Database, DevOps, Design, Tests, DocumentationAdapt to your context:
- Web:
UI, API, Database, DevOps - Mobile:
iOS, Android, Backend, Design - Data:
ETL, Analysis, ML, Visualization
List team members:
**Users**: @alice (Alice Martin), @bob (Bob Smith), @charlie (Charlie Brown)Format: @username (Full Name)
Define priority levels with emojis for visual identification:
**Priorities**: 🔴 Critical | 🟠 High | 🟡 Medium | 🟢 LowValid emoji icons: Priorities support a wide range of emojis that automatically map to colors. You can use any of these:
- Circles: 🔴 🟠 🟡 🟢 🔵 🟣 ⚪ ⚫
- Squares: 🟥 🟧 🟨 🟩 🟦 🟪
- Hearts: ❤️ 🧡 💛 💚 💙 💜 🤍 🖤
- Diamonds: 🔶 🔷 🔸 🔹
- Stars: ⭐ 🌟
- Flags: 🚩 🏴 🏳️
- Alerts:
⚠️ 🔥 💥 ⚡ - Arrows: ⬆️ ➡️ ⬇️
- Symbols: ❗ ❓ ❕ ❔
Examples of priority systems:
# Traditional severity levels
**Priorities**: 🔴 Critical | 🟠 High | 🟡 Medium | 🟢 Low
# Urgency indicators
**Priorities**: 🔥 Urgent | ⚡ Important | ⭐ Normal | ⬇️ Low
# Custom workflow
**Priorities**: 🚩 Blocker | ⚠️ Must Have | 💡 Nice to Have | 💤 SomedayNote: The emoji determines the badge color in the UI. For example, 🔴 displays as red, 🟢 as green, etc.
Create an adapted tag system:
**Tags**: #bug, #feature, #refactor, #docs, #urgent, #blocked, #tech-debtExamples of tag systems:
- By type:
#bug,#feature,#refactor,#docs - By priority:
#urgent,#important,#nice-to-have - By status:
#blocked,#waiting,#in-review - By domain:
#security,#performance,#ux,#a11y
Backlog management:
- Create tasks from GitHub issues
- Plan sprints
- Track team velocity
Bug tracking:
- Tag
#bug+ critical priority - Assignment to developers
- Resolution documentation
Code reviews:
- Dedicated column "👀 Review"
- Review checklist in subtasks
- Archiving with technical decisions
Product roadmap:
- Create tasks for each feature
- Deadlines and milestones
- Progress tracking
Team collaboration:
- Multi-user assignment
- Filter by person
- Real-time visibility via Git
Retrospectives:
- Search in archives
- Statistics on completed tasks
- Velocity analysis
Advanced ToDo lists:
- Organize tasks by project
- Subtasks to break down
- Archives for history
Personal projects:
- Track side-projects
- Notes and learnings
- Goals with deadlines
Journaling:
- Task = journal entry
- Tags to categorize
- Archives = complete journal
Git synchronization:
git pull origin main # Get updates
# Work in the application
git add kanban.md archive.md
git commit -m "Update tasks"
git push origin main # Share with teamConflict resolution:
# In case of conflict on kanban.md
git checkout --theirs kanban.md # Take remote version
# or
git checkout --ours kanban.md # Keep local version
# or resolve manually (simple Markdown format)Branch workflow:
# Create a branch per feature
git checkout -b feature/TASK-042-notifications
# Reference task in commits
git commit -m "feat: Add WebSocket server (TASK-042 - 1/5)"
git commit -m "feat: Add notification API (TASK-042 - 2/5)"
# Merge and archive
git checkout main
git merge feature/TASK-042-notifications
# Move TASK-042 to "✅ Done" then archive| Browser | Minimum version | Support | Notes |
|---|---|---|---|
| Chrome | 86+ | ✅ Full | Recommended |
| Edge | 86+ | ✅ Full | Recommended |
| Opera | 72+ | ✅ Full | OK |
| Brave | 1.17+ | ✅ Full | OK |
| Firefox | - | ❌ Not supported | API not available |
| Safari | - | ❌ Not supported | API not available |
Note: File System Access API is required. It is not available on Firefox and Safari.
- ✅ Windows 10/11
- ✅ macOS 10.15+ (with Chrome/Edge)
- ✅ Linux (all distributions with Chrome/Edge/Opera)
- ✅ Chrome OS
- ❌ iOS/iPadOS (Safari only)
- ❌ Android (limited support)
- HTML file: ~144 KB (everything included, no dependencies)
- Loading: Instant (< 100ms)
- Parsing: < 50ms for 1000 tasks
- Memory: ~10 MB (for 500 tasks)
AI_WORKFLOW.md: Complete guidelines for AI assistants/examples/: Examples of kanban.md and archive.md files/examples/README.md: Detailed Markdown format
Download blank templates:
kanban.md- Base templatearchive.md- Archive templateAI_WORKFLOW.md- Guidelines for AIs- AI configuration templates:
CLAUDE.md.exemple,COPILOT.md.exemple, etc.
Detailed format documentation in /examples/README.md:
- Task structure
- Required/optional metadata
- Subtasks and notes
- Kanban configuration
- Complete examples
- ✅ 100% local data: Nothing is sent to the Internet
- ✅ No tracking: No telemetry, no analytics
- ✅ No account: No authentication required
- ✅ Explicit permissions: User controls file access
- ✅ Open code: All JavaScript code is readable in HTML file
- ✅ No CDN: No external resources loaded
- ✅ Offline: Works without Internet connection
The application only requests:
- File Read/Write: To access your Markdown files
- IndexedDB: To remember recent projects (local to browser)
No network, webcam, microphone or other permissions are required.
# Clone repository
git clone https://github.com/your-username/markdown-task-manager.git
cd markdown-task-manager
# Open application
open task-manager.html # macOS
xdg-open task-manager.html # Linux
start task-manager.html # Windows
# Or host locally (optional)
python -m http.server 8000
# Then open http://localhost:8000/task-manager.html# Create a new project with task system
mkdir my-project
cd my-project
git init
# Copy necessary files
cp /path/to/kanban.md .
cp /path/to/archive.md .
cp /path/to/AI_WORKFLOW.md . # Optional (for AI)
cp /path/to/CLAUDE.md.exemple CLAUDE.md # Optional (for Claude)
# First commit
git add .
git commit -m "chore: Initialize task management system"
# Open application
open /path/to/task-manager.html
# Select my-project/ folderFrom Trello/Jira/Linear:
- Export your tasks to CSV
- Use a script to convert to Markdown format
- Import into
kanban.md
From GitHub Issues:
# Use GitHub CLI
gh issue list --state all --json number,title,body,labels
# Convert to Markdown Task Manager formatFrom Notion/Obsidian:
- Export to Markdown
- Adjust format to match template
- Import into application
Contributions welcome! Here's how to help:
- Check that bug doesn't already exist in issues
- Create an issue with:
- Bug description
- Steps to reproduce
- Browser and version
- Screenshots if applicable
- Create an issue with
enhancementtag - Describe feature and its usefulness
- Wait for feedback before implementing
- Fork the repository
- Create a branch (
git checkout -b feature/my-feature) - Modify
task-manager.html(everything is in this file) - Test in Chrome, Edge and Opera
- Commit (
git commit -m "feat: Add feature") - Push (
git push origin feature/my-feature) - Create a Pull Request
- Readability: Commented and structured code
- Performance: Optimize for 1000+ tasks
- Compatibility: Test on Chrome, Edge, Opera
- Accessibility: Follow ARIA standards
- Documentation: Update README if necessary
- ✅ Interactive Kanban
- ✅ Complete task management
- ✅ Advanced filters
- ✅ Archive system
- ✅ Multi-project
- ✅ Auto-save
- ✅ AI integration
v1.1 (Short term)
- Dark mode
- Keyboard shortcuts
- PDF/HTML export
- Visual statistics (charts)
v1.2 (Medium term)
- File drag & drop (attachments)
- Mentions in comments (@user)
- Reminder notifications (deadlines)
- Task templates
v2.0 (Long term)
- Complete offline mode (Service Worker)
- Cross-device synchronization (via automatic Git)
- System plugin (IDE integration)
- Optional REST API (local server)
Mozilla Public License 2.0 (MPL-2.0)
This project is distributed under MPL-2.0 license. You are free to:
- Use code in commercial and private projects
- Modify source code
- Distribute modified or unmodified code
Under condition of:
- Publishing modifications to files under MPL-2.0 license
- Including a copy of MPL-2.0 license
- Preserving copyright notices
See LICENSE file for more details.
Thanks to open-source community for:
- File System Access API (Google Chrome team)
- Markdown standards (CommonMark)
- User feedback and suggestions
Questions? Open an issue on GitHub
Bugs? Create an issue with bug tag
Suggestions? Create an issue with enhancement tag
Created with ❤️ for those who love simplicity, control of their data, and transparency
# 1. Download task-manager.html to ~/tools/
cd ~/tools
# [Download task-manager.html]
# 2. Create a new project
cd ~/projects
mkdir my-app
cd my-app
git init
# 3. Create task files
cat > kanban.md << 'EOF'
# Kanban Board
## ⚙️ Configuration
**Columns**: 📝 To Do | 🚀 In Progress | ✅ Done
**Categories**: Frontend, Backend, Database
**Users**: @me
**Tags**: #feature, #bug, #refactor
## 📝 To Do
## 🚀 In Progress
## ✅ Done
<!-- Config: Last Task ID: 000 -->
EOF
cat > archive.md << 'EOF'
# Task Archive
## ✅ Archives
EOF
# 4. Open application
open ~/tools/task-manager.html
# 5. Select my-app/ folder
# 6. Create your first task!# 1. Install for team
git clone https://github.com/team/project.git
cd project
# 2. Add task system
cp ~/downloads/kanban.md .
cp ~/downloads/archive.md .
git add kanban.md archive.md
git commit -m "chore: Add task management system"
git push
# 3. Each team member:
# - Downloads task-manager.html
# - Clone/pull project
# - Opens task-manager.html
# - Selects project/ folder
# 4. Daily workflow:
git pull # Get updates
# [Work in app]
git add kanban.md
git commit -m "Update tasks"
git push # Share with team# 1. Complete installation with AI
cd my-project
cp ~/downloads/kanban.md .
cp ~/downloads/archive.md .
cp ~/downloads/AI_WORKFLOW.md .
cp ~/downloads/CLAUDE.md.exemple CLAUDE.md
# 2. First session with Claude
# Say: "Read CLAUDE.md and create a task to implement an auth system"
# 3. Claude will automatically:
# - Create TASK-001 in kanban.md
# - Break down into subtasks
# - Update as it progresses
# - Document result
# 4. You can visualize in app
open ~/tools/task-manager.html
# [Select my-project/]
# See TASK-001 with all subtasks checked!🎉 You're ready! Start organizing your tasks now.