From 9fe0998436488537a8a2e8ffeefb0c4424b41c60 Mon Sep 17 00:00:00 2001 From: Peter Stone Date: Mon, 12 Jan 2026 09:27:16 -1000 Subject: Initial commit: Personal Consolidation Dashboard (Phase 1 Complete) Implemented a unified web dashboard aggregating tasks, notes, and meal planning: Core Features: - Trello integration (PRIMARY feature - boards, cards, lists) - Todoist integration (tasks and projects) - Obsidian integration (20 most recent notes) - PlanToEat integration (optional - 7-day meal planning) - Mobile-responsive web UI with auto-refresh (5 min) - SQLite caching with 5-minute TTL - AI agent endpoint with Bearer token authentication Technical Implementation: - Go 1.21+ backend with chi router - Interface-based API client design for testability - Parallel data fetching with goroutines - Graceful degradation (partial data on API failures) - .env file loading with godotenv - Comprehensive test coverage (9/9 tests passing) Bug Fixes: - Fixed .env file not being loaded at startup - Fixed nil pointer dereference with optional API clients (typed nil interface gotcha) Documentation: - START_HERE.md - Quick 5-minute setup guide - QUICKSTART.md - Fast track setup - SETUP_GUIDE.md - Detailed step-by-step instructions - PROJECT_SUMMARY.md - Complete project overview - CLAUDE.md - Guide for Claude Code instances - AI_AGENT_ACCESS.md - AI agent design document - AI_AGENT_SETUP.md - Claude.ai integration guide - TRELLO_AUTH_UPDATE.md - New Power-Up auth process Statistics: - Binary: 17MB - Code: 2,667 lines - Tests: 5 unit + 4 acceptance tests (all passing) - Dependencies: chi, sqlite3, godotenv Co-Authored-By: Claude Sonnet 4.5 --- web/templates/index.html | 185 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 185 insertions(+) create mode 100644 web/templates/index.html (limited to 'web/templates') diff --git a/web/templates/index.html b/web/templates/index.html new file mode 100644 index 0000000..7668a94 --- /dev/null +++ b/web/templates/index.html @@ -0,0 +1,185 @@ + + + + + + Personal Dashboard + + + + +
+ +
+

Personal Dashboard

+
+ + Last updated: {{.LastUpdated.Format "3:04 PM"}} + + +
+
+ + + {{if .Errors}} +
+

Errors:

+
    + {{range .Errors}} +
  • {{.}}
  • + {{end}} +
+
+ {{end}} + + +
+ +
+ {{if .Boards}} +
+

📋 Trello Boards

+
+ {{range .Boards}} +
+

{{.Name}}

+ {{if .Cards}} +
+ {{range .Cards}} +
+

{{.Name}}

+ {{if .ListName}} + + {{.ListName}} + + {{end}} + {{if .DueDate}} + + Due: {{.DueDate.Format "Jan 2"}} + + {{end}} + {{if .URL}} + + View → + + {{end}} +
+ {{end}} +
+ {{else}} +

No cards

+ {{end}} +
+ {{end}} +
+
+ {{end}} +
+ + +
+
+

✓ Todoist Tasks

+ + {{if .Tasks}} +
+ {{range .Tasks}} +
+ +
+

+ {{.Content}} +

+ {{if .Description}} +

{{.Description}}

+ {{end}} +
+ {{if .ProjectName}} + {{.ProjectName}} + {{end}} + {{if .DueDate}} + + Due: {{.DueDate.Format "Jan 2"}} + + {{end}} + {{range .Labels}} + {{.}} + {{end}} +
+
+ {{if .URL}} + + + + + + {{end}} +
+ {{end}} +
+ {{else}} +

No tasks found

+ {{end}} +
+
+ + +
+
+

Upcoming Meals

+ + {{if .Meals}} +
+ {{range .Meals}} +
+

{{.RecipeName}}

+
+ {{.Date.Format "Mon, Jan 2"}} + + {{.MealType}} + +
+
+ {{end}} +
+ {{else}} +

No meals planned

+ {{end}} +
+
+
+ + + {{if .Notes}} +
+
+

Recent Notes

+
+ {{range .Notes}} +
+

{{.Title}}

+

{{.Content}}

+
+ {{.Modified.Format "Jan 2, 3:04 PM"}} + {{if .Tags}} +
+ {{range .Tags}} + #{{.}} + {{end}} +
+ {{end}} +
+
+ {{end}} +
+
+
+ {{end}} +
+ + + + -- cgit v1.2.3