Commit Graph

3 Commits

Author SHA1 Message Date
8c54852cae refactor: remove dead code, add LLM CLI flags, rewrite README
Remove unused crypto module, DataDir/DefaultDBPath (SQLite remnant),
and ListenAndServe (replaced by direct http.Server in main). Strip 17
unreferenced i18n keys from en/de translations. Add --llm-provider,
--llm-model, and --llm-endpoint CLI flags for runtime LLM override
without a config file. Rewrite README with correct Go 1.25 version,
shields, LLM providers table, Docker/Helm deployment docs. Fix
.gitignore pattern to not match cmd/heatguard/ directory.
2026-02-10 05:05:53 +01:00
a89720fded feat: add LLM provider settings to web UI with encrypted API key storage
Add full LLM configuration section to the setup page with provider
dropdown, model/API key fields for cloud providers (Anthropic, OpenAI,
Gemini), and endpoint/model fields for Ollama. API keys are encrypted
with AES-256-GCM and stored in the database.
2026-02-09 11:41:16 +01:00
1c9db02334 feat: add web UI with full CRUD setup page
Add server-side rendered setup UI accessible via `heatwave web`.
The dashboard is now re-rendered per request and includes a nav bar
linking to the new /setup page. Setup provides full CRUD for profiles,
rooms, devices, occupants, AC units (with room assignment), scenario
toggles, and forecast fetching — all via POST/redirect/GET forms.

- Add ShowNav field to DashboardData for conditional nav bar
- Extract fetchForecastForProfile() for reuse by web handler
- Create setup.html.tmpl with Tailwind-styled entity sections
- Create web_handlers.go with 15 route handlers and flash cookies
- Switch web.go from pre-rendered to per-request dashboard rendering
- Graceful dashboard fallback when no forecast data exists
2026-02-09 10:39:00 +01:00