mdboard 1.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.
- package/LICENSE +21 -0
- package/README.md +191 -0
- package/bin.js +46 -0
- package/index.html +1067 -0
- package/init.js +68 -0
- package/package.json +33 -0
- package/server.js +711 -0
package/init.js
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
const fs = require('fs');
|
|
4
|
+
const path = require('path');
|
|
5
|
+
|
|
6
|
+
const cwd = process.cwd();
|
|
7
|
+
const projectPath = path.join(cwd, 'project');
|
|
8
|
+
const projectName = path.basename(cwd);
|
|
9
|
+
const today = new Date().toISOString().split('T')[0];
|
|
10
|
+
|
|
11
|
+
if (fs.existsSync(projectPath)) {
|
|
12
|
+
console.log(`\n project/ already exists at ${projectPath}`);
|
|
13
|
+
console.log(' Skipping init to avoid overwriting existing data.\n');
|
|
14
|
+
process.exit(0);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
// Create directories
|
|
18
|
+
fs.mkdirSync(projectPath, { recursive: true });
|
|
19
|
+
fs.mkdirSync(path.join(projectPath, 'milestones'), { recursive: true });
|
|
20
|
+
fs.mkdirSync(path.join(projectPath, 'archive'), { recursive: true });
|
|
21
|
+
|
|
22
|
+
// PROJECT.md
|
|
23
|
+
fs.writeFileSync(path.join(projectPath, 'PROJECT.md'), `---
|
|
24
|
+
name: "${projectName}"
|
|
25
|
+
description: ""
|
|
26
|
+
created: ${today}
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
# ${projectName}
|
|
30
|
+
|
|
31
|
+
## Current State
|
|
32
|
+
|
|
33
|
+
No milestones or sprints created yet.
|
|
34
|
+
|
|
35
|
+
## Notes
|
|
36
|
+
|
|
37
|
+
`, 'utf-8');
|
|
38
|
+
|
|
39
|
+
// metrics.md
|
|
40
|
+
fs.writeFileSync(path.join(projectPath, 'metrics.md'), `---
|
|
41
|
+
updated: ${today}
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
# Metrics
|
|
45
|
+
|
|
46
|
+
## Velocity
|
|
47
|
+
|
|
48
|
+
| Sprint | Planned | Completed | Rate |
|
|
49
|
+
|--------|---------|-----------|------|
|
|
50
|
+
|
|
51
|
+
## Notes
|
|
52
|
+
|
|
53
|
+
`, 'utf-8');
|
|
54
|
+
|
|
55
|
+
console.log(`
|
|
56
|
+
mdboard init — project scaffolded
|
|
57
|
+
|
|
58
|
+
Created:
|
|
59
|
+
project/PROJECT.md
|
|
60
|
+
project/metrics.md
|
|
61
|
+
project/milestones/
|
|
62
|
+
project/archive/
|
|
63
|
+
|
|
64
|
+
Next steps:
|
|
65
|
+
1. Edit project/PROJECT.md with your project details
|
|
66
|
+
2. Create milestones and epics under project/milestones/
|
|
67
|
+
3. Run \`mdboard\` to start the dashboard
|
|
68
|
+
`);
|
package/package.json
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "mdboard",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Git-based project management dashboard. Reads markdown files with YAML frontmatter and serves a visual kanban board, table, milestones, and metrics views.",
|
|
5
|
+
"main": "./server.js",
|
|
6
|
+
"bin": {
|
|
7
|
+
"mdboard": "bin.js"
|
|
8
|
+
},
|
|
9
|
+
"files": [
|
|
10
|
+
"bin.js",
|
|
11
|
+
"server.js",
|
|
12
|
+
"index.html",
|
|
13
|
+
"init.js"
|
|
14
|
+
],
|
|
15
|
+
"keywords": [
|
|
16
|
+
"project-management",
|
|
17
|
+
"kanban",
|
|
18
|
+
"markdown",
|
|
19
|
+
"git",
|
|
20
|
+
"ai",
|
|
21
|
+
"dashboard",
|
|
22
|
+
"zero-dependency"
|
|
23
|
+
],
|
|
24
|
+
"author": "",
|
|
25
|
+
"license": "MIT",
|
|
26
|
+
"engines": {
|
|
27
|
+
"node": ">=18"
|
|
28
|
+
},
|
|
29
|
+
"repository": {
|
|
30
|
+
"type": "git",
|
|
31
|
+
"url": ""
|
|
32
|
+
}
|
|
33
|
+
}
|