roadmap-kit 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.
Files changed (39) hide show
  1. package/INSTALL.md +358 -0
  2. package/LICENSE +21 -0
  3. package/README.md +503 -0
  4. package/cli.js +548 -0
  5. package/dashboard/dist/assets/index-BzYzLB7u.css +1 -0
  6. package/dashboard/dist/assets/index-DIonhzlK.js +506 -0
  7. package/dashboard/dist/index.html +18 -0
  8. package/dashboard/dist/roadmap.json +268 -0
  9. package/dashboard/index.html +17 -0
  10. package/dashboard/package-lock.json +4172 -0
  11. package/dashboard/package.json +37 -0
  12. package/dashboard/postcss.config.js +6 -0
  13. package/dashboard/public/roadmap.json +268 -0
  14. package/dashboard/server.js +1366 -0
  15. package/dashboard/src/App.jsx +6979 -0
  16. package/dashboard/src/components/CircularProgress.jsx +55 -0
  17. package/dashboard/src/components/ProgressBar.jsx +33 -0
  18. package/dashboard/src/components/ProjectSettings.jsx +420 -0
  19. package/dashboard/src/components/SharedResources.jsx +239 -0
  20. package/dashboard/src/components/TaskList.jsx +273 -0
  21. package/dashboard/src/components/TechnicalDebt.jsx +170 -0
  22. package/dashboard/src/components/ui/accordion.jsx +46 -0
  23. package/dashboard/src/components/ui/badge.jsx +38 -0
  24. package/dashboard/src/components/ui/card.jsx +60 -0
  25. package/dashboard/src/components/ui/progress.jsx +22 -0
  26. package/dashboard/src/components/ui/tabs.jsx +47 -0
  27. package/dashboard/src/index.css +440 -0
  28. package/dashboard/src/lib/utils.js +6 -0
  29. package/dashboard/src/main.jsx +10 -0
  30. package/dashboard/tailwind.config.js +142 -0
  31. package/dashboard/vite.config.js +18 -0
  32. package/docker/Dockerfile +35 -0
  33. package/docker/docker-compose.yml +30 -0
  34. package/docker/entrypoint.sh +31 -0
  35. package/package.json +68 -0
  36. package/scanner.js +351 -0
  37. package/setup.sh +354 -0
  38. package/templates/clinerules.template +130 -0
  39. package/templates/roadmap.template.json +30 -0
package/INSTALL.md ADDED
@@ -0,0 +1,358 @@
1
+ # ROADMAP-KIT - Installation Guide
2
+
3
+ ## Requirements
4
+
5
+ - **Node.js 18+** - [Download](https://nodejs.org)
6
+ - **Git** (optional, for commit tracking)
7
+
8
+ ---
9
+
10
+ ## Quick Install (Local)
11
+
12
+ ```bash
13
+ # 1. Copy roadmap-kit to your project
14
+ cp -r /path/to/roadmap-kit /your-project/
15
+
16
+ # 2. Run setup
17
+ cd /your-project
18
+ ./roadmap-kit/setup.sh
19
+
20
+ # 3. Open dashboard
21
+ cd roadmap-kit/dashboard && npm run dev
22
+
23
+ # 4. Open browser
24
+ open http://localhost:6969
25
+ ```
26
+
27
+ ---
28
+
29
+ ## Detailed Installation
30
+
31
+ ### Step 1: Copy to Your Project
32
+
33
+ ```bash
34
+ # Option A: Copy folder
35
+ cp -r roadmap-kit /path/to/your-project/
36
+
37
+ # Option B: Clone from repo (if published)
38
+ cd /your-project
39
+ git clone https://github.com/hacklet1101/roadmap-kit.git
40
+ ```
41
+
42
+ ### Step 2: Run Setup Script
43
+
44
+ ```bash
45
+ cd /your-project
46
+ ./roadmap-kit/setup.sh
47
+ ```
48
+
49
+ The setup will:
50
+ 1. Install Node.js dependencies
51
+ 2. Create `roadmap.json` (project state)
52
+ 3. Create `.clinerules` (AI coding rules)
53
+ 4. **Ask for admin credentials** (email, password, name)
54
+ 5. Optionally generate Nginx configuration
55
+
56
+ ### Step 3: Start Dashboard
57
+
58
+ ```bash
59
+ # Option A: Direct
60
+ cd roadmap-kit/dashboard && npm run dev
61
+
62
+ # Option B: Via npm script (if package.json exists)
63
+ npm run roadmap
64
+
65
+ # Option C: Via CLI
66
+ node roadmap-kit/cli.js dashboard
67
+ ```
68
+
69
+ ### Step 4: Access Dashboard
70
+
71
+ Open **http://localhost:6969** and login with your configured credentials.
72
+
73
+ ---
74
+
75
+ ## Server Installation (Production)
76
+
77
+ ### Option 1: Dedicated Port (Recommended)
78
+
79
+ Access via `https://yourdomain.com:6969`
80
+
81
+ #### 1. Setup on Server
82
+
83
+ ```bash
84
+ cd /var/www/your-project
85
+ ./roadmap-kit/setup.sh
86
+ ```
87
+
88
+ When prompted:
89
+ - Enter your admin email and password
90
+ - Select **Yes** for Nginx configuration
91
+ - Enter your domain name
92
+ - Enable SSL if you have certificates
93
+
94
+ #### 2. Install Nginx Config
95
+
96
+ ```bash
97
+ sudo cp nginx-roadmap.conf /etc/nginx/sites-available/roadmap-yourdomain
98
+ sudo ln -s /etc/nginx/sites-available/roadmap-yourdomain /etc/nginx/sites-enabled/
99
+ sudo nginx -t && sudo systemctl reload nginx
100
+ ```
101
+
102
+ #### 3. Open Firewall Port
103
+
104
+ ```bash
105
+ sudo ufw allow 6969
106
+ ```
107
+
108
+ #### 4. Run Dashboard (with PM2)
109
+
110
+ ```bash
111
+ # Install PM2 globally
112
+ npm install -g pm2
113
+
114
+ # Start dashboard
115
+ cd /var/www/your-project/roadmap-kit/dashboard
116
+ pm2 start server.js --name roadmap-dashboard
117
+
118
+ # Auto-start on boot
119
+ pm2 save
120
+ pm2 startup
121
+ ```
122
+
123
+ #### 5. Access
124
+
125
+ ```
126
+ https://yourdomain.com:6969
127
+ ```
128
+
129
+ ---
130
+
131
+ ### Option 2: Docker
132
+
133
+ #### 1. Generate Docker Config
134
+
135
+ ```bash
136
+ node roadmap-kit/cli.js docker
137
+ ```
138
+
139
+ #### 2. Run with Docker Compose
140
+
141
+ ```bash
142
+ docker-compose -f docker-roadmap.yml up -d
143
+ ```
144
+
145
+ #### 3. Custom Port
146
+
147
+ ```bash
148
+ ROADMAP_PORT=8080 docker-compose -f docker-roadmap.yml up -d
149
+ ```
150
+
151
+ ---
152
+
153
+ ### Option 3: Custom Port via Environment Variable
154
+
155
+ ```bash
156
+ # Start on different port
157
+ PORT=8080 node roadmap-kit/dashboard/server.js
158
+
159
+ # Or with npm
160
+ PORT=8080 npm run roadmap
161
+ ```
162
+
163
+ ---
164
+
165
+ ## SSL Configuration
166
+
167
+ ### With Let's Encrypt (Certbot)
168
+
169
+ ```bash
170
+ # Install certbot
171
+ sudo apt install certbot python3-certbot-nginx
172
+
173
+ # Generate certificate
174
+ sudo certbot certonly --nginx -d yourdomain.com
175
+
176
+ # Re-run setup with SSL
177
+ ./roadmap-kit/setup.sh
178
+ # Select: Enable SSL/HTTPS? (y)
179
+ ```
180
+
181
+ ### Manual SSL
182
+
183
+ If you have your own certificates:
184
+
185
+ ```bash
186
+ node roadmap-kit/cli.js nginx \
187
+ --domain yourdomain.com \
188
+ --ssl \
189
+ --cert-path /path/to/certs
190
+ ```
191
+
192
+ ---
193
+
194
+ ## Environment Variables
195
+
196
+ | Variable | Description | Default |
197
+ |----------|-------------|---------|
198
+ | `PORT` | Dashboard port | `6969` |
199
+ | `ROADMAP_ADMIN_EMAIL` | Default admin email | `admin@localhost` |
200
+ | `ROADMAP_ADMIN_PASSWORD` | Default admin password | `Admin123!` |
201
+ | `ROADMAP_ADMIN_NAME` | Default admin name | `Admin` |
202
+ | `BASE_PATH` | URL base path (for subpath deployment) | `/` |
203
+
204
+ ### Example: Start with Custom Config
205
+
206
+ ```bash
207
+ PORT=8080 \
208
+ ROADMAP_ADMIN_EMAIL=admin@mycompany.com \
209
+ ROADMAP_ADMIN_PASSWORD=SecurePass123! \
210
+ node roadmap-kit/dashboard/server.js
211
+ ```
212
+
213
+ ---
214
+
215
+ ## CLI Commands Reference
216
+
217
+ ```bash
218
+ # Initialize roadmap in project
219
+ node roadmap-kit/cli.js init
220
+
221
+ # Scan Git history and update roadmap
222
+ node roadmap-kit/cli.js scan
223
+
224
+ # Open dashboard
225
+ node roadmap-kit/cli.js dashboard
226
+
227
+ # Generate Docker configuration
228
+ node roadmap-kit/cli.js docker
229
+
230
+ # Generate Nginx configuration
231
+ node roadmap-kit/cli.js nginx --domain example.com --ssl
232
+ ```
233
+
234
+ ### Nginx Command Options
235
+
236
+ ```bash
237
+ node roadmap-kit/cli.js nginx \
238
+ --domain yourdomain.com \ # Your domain
239
+ --port 6969 \ # Dashboard port (default: 6969)
240
+ --ssl \ # Enable HTTPS
241
+ --app-port 3000 \ # Main app port (optional)
242
+ --cert-path /etc/letsencrypt/live/yourdomain.com
243
+ ```
244
+
245
+ ---
246
+
247
+ ## File Structure After Installation
248
+
249
+ ```
250
+ your-project/
251
+ ├── .clinerules # AI coding rules
252
+ ├── package.json # (updated with roadmap scripts)
253
+ ├── nginx-roadmap.conf # (if configured for server)
254
+ └── roadmap-kit/
255
+ ├── auth.json # User credentials (created by setup)
256
+ ├── roadmap.json # Project state
257
+ ├── cli.js # CLI tool
258
+ ├── scanner.js # Git commit scanner
259
+ ├── setup.sh # Installation script
260
+ ├── dashboard/ # React dashboard
261
+ │ ├── server.js # Express + Vite server
262
+ │ └── src/ # React components
263
+ ├── docker/ # Docker configuration
264
+ └── templates/ # Template files
265
+ ```
266
+
267
+ ---
268
+
269
+ ## Troubleshooting
270
+
271
+ ### Port Already in Use
272
+
273
+ ```bash
274
+ # Find process using port
275
+ lsof -i :6969
276
+
277
+ # Kill process
278
+ kill -9 <PID>
279
+
280
+ # Or use different port
281
+ PORT=7070 npm run roadmap
282
+ ```
283
+
284
+ ### Permission Denied on setup.sh
285
+
286
+ ```bash
287
+ chmod +x roadmap-kit/setup.sh
288
+ ./roadmap-kit/setup.sh
289
+ ```
290
+
291
+ ### Node.js Version Too Old
292
+
293
+ ```bash
294
+ # Check version
295
+ node -v
296
+
297
+ # Install Node 18+ via nvm
298
+ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
299
+ nvm install 18
300
+ nvm use 18
301
+ ```
302
+
303
+ ### Dashboard Not Loading
304
+
305
+ ```bash
306
+ # Reinstall dependencies
307
+ cd roadmap-kit/dashboard
308
+ rm -rf node_modules
309
+ npm install
310
+ npm run dev
311
+ ```
312
+
313
+ ### SSL Certificate Not Found
314
+
315
+ ```bash
316
+ # Generate with certbot
317
+ sudo certbot certonly --nginx -d yourdomain.com
318
+
319
+ # Verify certificate exists
320
+ ls -la /etc/letsencrypt/live/yourdomain.com/
321
+ ```
322
+
323
+ ### Forgot Admin Password
324
+
325
+ ```bash
326
+ # Delete auth.json and re-run setup
327
+ rm roadmap-kit/auth.json
328
+ ./roadmap-kit/setup.sh
329
+ ```
330
+
331
+ ---
332
+
333
+ ## Updating
334
+
335
+ ```bash
336
+ # Backup your data
337
+ cp roadmap-kit/roadmap.json roadmap-kit/roadmap.json.bak
338
+ cp roadmap-kit/auth.json roadmap-kit/auth.json.bak
339
+
340
+ # Replace roadmap-kit folder (preserving config)
341
+ rm -rf roadmap-kit/dashboard roadmap-kit/cli.js roadmap-kit/scanner.js
342
+ cp -r /path/to/new/roadmap-kit/* roadmap-kit/
343
+
344
+ # Restore config
345
+ cp roadmap-kit/roadmap.json.bak roadmap-kit/roadmap.json
346
+ cp roadmap-kit/auth.json.bak roadmap-kit/auth.json
347
+
348
+ # Reinstall dependencies
349
+ cd roadmap-kit && npm install
350
+ cd dashboard && npm install
351
+ ```
352
+
353
+ ---
354
+
355
+ ## Support
356
+
357
+ - **Issues**: https://github.com/hacklet1101/roadmap-kit/issues
358
+ - **Documentation**: https://roadmap.ink/docs
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024 HACKLET
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.