a0c8483c0e
- New ARCHITECTURE_HTMX.md — comprehensive HTMX architecture doc - ARCHITECTURE.md — updated to point to HTMX version - UI_COMPONENTS.md — replaced React tree with HTMX partials - SPRINT_PLAN.md — all sprint tasks updated for HTMX - BUILD_SYSTEM.md — simplified (no Vite, no npm) - TIMELINE.md — 3.5 week HTMX timeline - PROGRESS.md — updated status + HTMX - AGENTS.md — updated checkpoint with HTMX decision
130 lines
4.3 KiB
Markdown
130 lines
4.3 KiB
Markdown
# Hostkeeper V2 — Timeline & Milestones (HTMX)
|
|
|
|
> **Status**: Updated untuk HTMX
|
|
> **Last Updated**: 2026-07-07
|
|
> **Start Date**: 2026-07-07
|
|
> **Target MVP**: 2026-08-01 (estimasi ~3.5 minggu)
|
|
|
|
---
|
|
|
|
## Timeline Overview
|
|
|
|
```
|
|
Minggu 1 │ Sprint 0 ─ Sprint 1 ─ │── Foundation + Dashboard
|
|
Minggu 2 │ Sprint 2 ─ Sprint 3 ─ │── Snippets + Keychain + Settings
|
|
Minggu 3 │ Sprint 4 ─────────────│── SFTP
|
|
Minggu 4 │ Sprint 5 ─ Sprint 6 ─ │── Terminal + Storage Integration
|
|
└────────────────────────┘
|
|
7 Jul 14 Jul 21 Jul 28 Jul
|
|
```
|
|
|
|
---
|
|
|
|
## Detailed Timeline
|
|
|
|
### Sprint 0 + Sprint 1 — Foundation + Dashboard
|
|
**5 hari — 7 Jul s.d. 11 Jul**
|
|
|
|
| Day | Date | Deliverable |
|
|
|-----|------|-------------|
|
|
| 1 | 7 Jul | Go module, Fiber server, static files, HTMX + Alpine |
|
|
| 2 | 8 Jul | Layout template, nav sidebar, health endpoint |
|
|
| 3 | 9 Jul | Host model, dashboard handler, host list template |
|
|
| 4 | 10 Jul | Search HTMX, filter, view toggle, add host modal |
|
|
| 5 | 11 Jul | Background transfers, toast notification, CSS final |
|
|
|
|
**Milestone M1 — Dashboard Functional (11 Jul)**
|
|
- GoFiber server running on :1947
|
|
- Layout dengan sidebar navigasi
|
|
- Dashboard dengan host list, search, filter, add host
|
|
- HTMX interaktivitas berfungsi
|
|
|
|
### Sprint 2 — Snippets + Keychain
|
|
**3 hari — 14 Jul s.d. 16 Jul**
|
|
|
|
| Day | Date | Deliverable |
|
|
|-----|------|-------------|
|
|
| 6 | 14 Jul | Snippet model + handler + template + search/filter |
|
|
| 7 | 15 Jul | Add snippet modal, clipboard JS, tag filter |
|
|
| 8 | 16 Jul | Keychain model + handler + template + passphrase reveal |
|
|
|
|
**Milestone M2 — Snippets + Keys CRUD (16 Jul)**
|
|
- Snippet library dengan search, tag filter, add modal
|
|
- Keychain dengan strength badge, passphrase reveal, copy
|
|
|
|
### Sprint 3 — Settings + Brief
|
|
**2 hari — 17 Jul s.d. 18 Jul**
|
|
|
|
| Day | Date | Deliverable |
|
|
|-----|------|-------------|
|
|
| 9 | 17 Jul | Settings handler + template + toggle switches |
|
|
| 10 | 18 Jul | Brief overlay, connected devices, danger zone |
|
|
|
|
**Milestone M3 — Settings Complete (18 Jul)**
|
|
- Profile form, toggle switches, connected devices
|
|
- Brief design system overlay
|
|
|
|
### Sprint 4 — SFTP
|
|
**4 hari — 21 Jul s.d. 24 Jul**
|
|
|
|
| Day | Date | Deliverable |
|
|
|-----|------|-------------|
|
|
| 11 | 21 Jul | FileItem + Transfer model, SFTP handler |
|
|
| 12 | 22 Jul | Dual-pane layout, breadcrumb navigation |
|
|
| 13 | 23 Jul | Folder create/delete, upload/download |
|
|
| 14 | 24 Jul | Search pane, toast notification, polish |
|
|
|
|
**Milestone M4 — SFTP Works (24 Jul)**
|
|
- Dual-pane file browser dengan navigasi folder
|
|
- Upload/download, create/delete folder
|
|
|
|
### Sprint 5 — Terminal
|
|
**3 hari — 25 Jul s.d. 28 Jul**
|
|
|
|
| Day | Date | Deliverable |
|
|
|-----|------|-------------|
|
|
| 15 | 25 Jul | xterm.js setup, WebSocket handler |
|
|
| 16 | 26 Jul | SSH pipe via v1/pkg/ssh, terminal I/O |
|
|
| 17 | 28 Jul | Multi-tab Alpine, polish, error handling |
|
|
|
|
**Milestone M5 — Terminal Works (28 Jul)**
|
|
- SSH terminal via WebSocket + xterm.js
|
|
- Multi-tab support
|
|
|
|
### Sprint 6 — Storage Integration + Polish
|
|
**3 hari — 29 Jul s.d. 31 Jul**
|
|
|
|
| Day | Date | Deliverable |
|
|
|-----|------|-------------|
|
|
| 18 | 29 Jul | replace directive, v1/pkg/storage integration |
|
|
| 19 | 30 Jul | v1/pkg/crypto, config, knownhosts integration |
|
|
| 20 | 31 Jul | Remove mock data, final testing, bug fixes |
|
|
|
|
**Milestone MVP — Hostkeeper V2 Ready (31 Jul)**
|
|
- All features functional with real data persistence
|
|
- Single Go binary, ready for Electron wrapping
|
|
|
|
---
|
|
|
|
## Key Milestones
|
|
|
|
| Milestone | Date | Deliverable |
|
|
|-----------|------|-------------|
|
|
| M1 | 11 Jul | Dashboard + search/filter + add host |
|
|
| M2 | 16 Jul | Snippets + Keychain CRUD |
|
|
| M3 | 18 Jul | Settings + Brief overlay |
|
|
| M4 | 24 Jul | SFTP dual-pane file browser |
|
|
| M5 | 28 Jul | Terminal SSH via WebSocket |
|
|
| MVP | 31 Jul | Full integration with real storage |
|
|
|
|
---
|
|
|
|
## Estimasi vs React (dulu)
|
|
|
|
| Metrik | React (rencana lama) | HTMX (sekarang) |
|
|
|--------|---------------------|-----------------|
|
|
| Total waktu | ~6 minggu (30 Jun - 7 Aug) | ~3.5 minggu (7 Jul - 31 Jul) |
|
|
| Files | ~50 (Go + React + TS + Vite) | ~38 (Go + HTML + JS) |
|
|
| JS dependencies | 10+ library + npm | 3 file JS (HTMX, Alpine, xterm) |
|
|
| Build complexity | Vite + TypeScript + npm + Electron | CSS build + Go build |
|