commit da3e117e2d7dcbd4743d86463cc8b568638134f1 Author: Keith Solomon Date: Sun Apr 5 10:44:30 2026 -0500 chore(board): move task task-20260404-180000-a1b2c3 diff --git a/storage/projects/demo-project/.revision b/storage/projects/demo-project/.revision new file mode 100644 index 0000000..cd0ef4a --- /dev/null +++ b/storage/projects/demo-project/.revision @@ -0,0 +1 @@ +1775403870394 diff --git a/storage/projects/demo-project/board.md b/storage/projects/demo-project/board.md new file mode 100644 index 0000000..d87fc61 --- /dev/null +++ b/storage/projects/demo-project/board.md @@ -0,0 +1,24 @@ +--- +type: board +project_id: demo-project +columns: + - id: backlog + label: Backlog + order: 100 + - id: ready + label: Ready + order: 200 + - id: in-progress + label: In Progress + order: 300 + - id: review + label: Review + order: 400 + - id: done + label: Done + order: 500 + - id: trash + label: Trash + order: 600 +updated: 2026-04-04T18:00:00+00:00 +--- diff --git a/storage/projects/demo-project/index.md b/storage/projects/demo-project/index.md new file mode 100644 index 0000000..eb6e3ed --- /dev/null +++ b/storage/projects/demo-project/index.md @@ -0,0 +1,9 @@ +--- +type: project +id: demo-project +title: Demo Project +created: 2026-04-04T18:00:00+00:00 +updated: 2026-04-04T18:00:00+00:00 +--- + +This sample project shows the markdown layout IronKanban expects. You can move cards around, edit them, create notes, and watch the underlying files change. diff --git a/storage/projects/demo-project/notes/note-20260404-180300.md b/storage/projects/demo-project/notes/note-20260404-180300.md new file mode 100644 index 0000000..9e90233 --- /dev/null +++ b/storage/projects/demo-project/notes/note-20260404-180300.md @@ -0,0 +1,10 @@ +--- +type: note +id: note-20260404-180300 +title: Demo Note +project_id: demo-project +created: 2026-04-04T18:03:00+00:00 +updated: 2026-04-04T18:03:00+00:00 +--- + +Notes stay as markdown too, so project context can live beside the board instead of being buried in the UI. diff --git a/storage/projects/demo-project/tasks/task-20260404-180000-a1b2c3.md b/storage/projects/demo-project/tasks/task-20260404-180000-a1b2c3.md new file mode 100644 index 0000000..3975344 --- /dev/null +++ b/storage/projects/demo-project/tasks/task-20260404-180000-a1b2c3.md @@ -0,0 +1,19 @@ +--- +type: task +id: "task-20260404-180000-a1b2c3" +title: Build the markdown parser and repositories +project_id: "demo-project" +column: ready +order: 100 +completed: false +priority: high +is_active: true +created: "2026-04-04T18:00:00+00:00" +updated: "2026-04-05T15:44:30+00:00" +tags: + - mvp + - backend +--- + +Implement front matter parsing, atomic writes, and the repositories that read and write project, board, task, and note files. + diff --git a/storage/projects/demo-project/tasks/task-20260404-180100-d4e5f6.md b/storage/projects/demo-project/tasks/task-20260404-180100-d4e5f6.md new file mode 100644 index 0000000..c0881a0 --- /dev/null +++ b/storage/projects/demo-project/tasks/task-20260404-180100-d4e5f6.md @@ -0,0 +1,17 @@ +--- +type: task +id: task-20260404-180100-d4e5f6 +title: Wire drag and drop interactions +project_id: demo-project +column: in-progress +order: 100 +completed: false +priority: normal +is_active: true +created: 2026-04-04T18:01:00+00:00 +updated: 2026-04-04T18:01:00+00:00 +tags: + - frontend +--- + +Use SortableJS to reorder columns and tasks, then persist those changes through the JSON API. diff --git a/storage/projects/demo-project/tasks/task-20260404-180200-g7h8i9.md b/storage/projects/demo-project/tasks/task-20260404-180200-g7h8i9.md new file mode 100644 index 0000000..dbc325c --- /dev/null +++ b/storage/projects/demo-project/tasks/task-20260404-180200-g7h8i9.md @@ -0,0 +1,17 @@ +--- +type: task +id: task-20260404-180200-g7h8i9 +title: Add revision polling and note editing +project_id: demo-project +column: done +order: 100 +completed: true +priority: low +is_active: false +created: 2026-04-04T18:02:00+00:00 +updated: 2026-04-04T18:02:00+00:00 +tags: + - polish +--- + +Expose a project revision marker so the browser can poll for updates and reload whenever the board changes elsewhere.