# Feature: Docker Watcher Core **Branch:** `feature/docker-watcher-core` **Base branch:** `main` **Created:** 2026-03-27 **Status:** 🟡 In Progress **Strategy:** Big Bang (with per-phase code quality reviews) **Mode:** Automated **Execution:** Orchestrator ## Summary A self-hosted tool that automates Docker container deployment with Nginx Proxy Manager integration. Detects new images from Gitea/GitHub registries, deploys containers, and configures reverse proxy routing — all from a web dashboard. Supports multiple simultaneous versions of the same project. ## Build & Test Commands - **Build (Go):** `go build ./cmd/server/` - **Test (Go):** `go test ./...` - **Lint (Go):** `golangci-lint run` - **Build (Frontend):** `cd web && npm run build` - **Test (Frontend):** `cd web && npm test` - **Dev server:** `go run ./cmd/server/` ## Phases - [x] Phase 1: Project Scaffold & SQLite Store [domain: backend] → [subplan](./phase-1-scaffold-store.md) - [x] Phase 2: Crypto & Config Seed Loader [domain: backend] → [subplan](./phase-2-crypto-config.md) - [x] Phase 3: Docker Client [domain: backend] → [subplan](./phase-3-docker-client.md) - [x] Phase 4: NPM Client [domain: backend] → [subplan](./phase-4-npm-client.md) - [x] Phase 5: Registry Client & Poller [domain: backend] → [subplan](./phase-5-registry-poller.md) - [x] Phase 6: Webhook Handler [domain: backend] → [subplan](./phase-6-webhook-handler.md) - [x] Phase 7: Deployer & Health Checker [domain: backend] → [subplan](./phase-7-deployer.md) - [x] Phase 8: REST API Layer [domain: backend] → [subplan](./phase-8-api-layer.md) - [ ] Phase 9: SvelteKit Dashboard & Project Views [domain: frontend] → [subplan](./phase-9-dashboard.md) - [ ] Phase 10: Quick Deploy & Settings Pages [domain: frontend] → [subplan](./phase-10-settings-deploy.md) - [ ] Phase 11: Frontend Embed & Real-Time Updates [domain: fullstack] → [subplan](./phase-11-embed-sse.md) - [ ] Phase 12: Hardening [domain: backend] → [subplan](./phase-12-hardening.md) - [ ] Phase 13: Frontend Polish & Modern UI [domain: frontend] → [subplan](./phase-13-ui-polish.md) ### Parallel Execution Notes - Phases 3 and 4 are independent (Docker client vs NPM client) — can run in parallel - Phases 9 and 10 are independent (dashboard vs settings pages) — can run in parallel ## Phase Progress Log | Phase | Domain | Status | Review | Build | Committed | | ----- | ------ | ------ | ------ | ----- | --------- | | Phase 1: Scaffold & Store | backend | ✅ Complete | ✅ Pass w/ fixes | ⏭️ Skip (Big Bang) | ✅ | | Phase 2: Crypto & Config | backend | ✅ Complete | ✅ Pass w/ notes | ⏭️ Skip (Big Bang) | ✅ | | Phase 3: Docker Client | backend | ✅ Complete | ✅ Pass w/ fixes | ⏭️ Skip (Big Bang) | ✅ | | Phase 4: NPM Client | backend | ✅ Complete | ✅ Pass w/ fixes | ⏭️ Skip (Big Bang) | ✅ | | Phase 5: Registry & Poller | backend | ✅ Complete | ✅ Pass w/ fixes | ⏭️ Skip (Big Bang) | ✅ | | Phase 6: Webhook Handler | backend | ✅ Complete | ✅ Pass w/ fixes | ⏭️ Skip (Big Bang) | ✅ | | Phase 7: Deployer & Health | backend | ✅ Complete | ✅ Pass w/ fixes | ⏭️ Skip (Big Bang) | ✅ | | Phase 8: API Layer | backend | ✅ Complete | ⬜ Pending | ⏭️ Skip (Big Bang) | ⬜ | | Phase 9: Dashboard | frontend | ⬜ Not Started | ⬜ | ⏭️ Skip (Big Bang) | ⬜ | | Phase 10: Settings & Deploy | frontend | ⬜ Not Started | ⬜ | ⏭️ Skip (Big Bang) | ⬜ | | Phase 11: Embed & SSE | fullstack | ⬜ Not Started | ⬜ | ⏭️ Skip (Big Bang) | ⬜ | | Phase 12: Hardening | backend | ⬜ Not Started | ⬜ | ⏭️ Skip (Big Bang) | ⬜ | | Phase 13: UI Polish | frontend | ⬜ Not Started | ⬜ | ✅ Required (Final) | ⬜ | ## Amendment Log ### Amendment 1 — 2026-03-27 **Type:** Added phase **What changed:** Added Phase 13: Frontend Polish & Modern UI after Phase 12 **Why:** User wants modern look & feel with SVG icons and polished frontend **Impact on existing phases:** None — Phase 13 runs after all functionality is complete. Build/tests now required on Phase 13 (final) instead of Phase 12. ### Amendment 2 — 2026-03-27 **Type:** Modified phase **What changed:** Added Task 13 (EN/RU localization) to Phase 13: Frontend Polish & Modern UI **Why:** User wants bilingual support (English and Russian) in the dashboard **Impact on existing phases:** None — contained within Phase 13 ## Final Review - [ ] Comprehensive code review - [ ] Full build passes - [ ] Full test suite passes - [ ] Security review - [ ] Merged to `main`