feat: initial implementation of family chore tracker #1

Open
home-chores-bot wants to merge 14 commits from home-chores-bot/home-chores:main into main
First-time contributor

Initial implementation including:

  • Go backend with SQLite database
  • Gleam/Lustre frontend
  • REST API for chores, family members, and completions
  • WebSocket support for real-time updates
  • Home Assistant integration endpoint
  • Systemd service configuration
Initial implementation including: - Go backend with SQLite database - Gleam/Lustre frontend - REST API for chores, family members, and completions - WebSocket support for real-time updates - Home Assistant integration endpoint - Systemd service configuration
Features:
- Recurring daily/weekly/monthly chores
- One-time tasks with due dates
- Family member management with colors
- Chore assignment to family members
- Priority levels (low/medium/high)
- Real-time updates via WebSocket
- Home Assistant integration API
- Mobile-friendly responsive design

Tech stack:
- Frontend: Gleam + Lustre
- Backend: Go with SQLite
- Real-time: WebSocket
- Go HTTP server with WebSocket support for realtime updates
- SQLite database with SQLC for type-safe queries
- REST API for chores, family members, and completions
- Home Assistant integration endpoint at /api/ha/state
- Systemd service configuration
- Project documentation (README.md, AGENTS.md, docs/architecture.md)
- Update .gitignore to exclude Gleam build artifacts
- Remove generated files: bundle.js, frontend.mjs, prelude.mjs
- Remove Gleam dependency directories: gleam_json, gleam_stdlib, lustre
- Rename service file to match the installed service name
- Update AGENTS.md with correct systemctl commands
- Update justfile deploy recipe
- Update README.md project structure
- Document that multiple agents run concurrently on this VM
- Emphasize explicit git add to avoid committing others' work
- Add warnings about service restarts and file conflicts
- Rename 'Family Chores' to 'Home Chores' in header, title, and PWA manifest
- Add PWA manifest.json with proper app name for installable web app
- Add PWA meta tags to index.html for iOS support
- Refactor frontend.gleam with reusable view helpers:
  - form_group, text_input, color_input, select_option
  - nav_button, badge, delete_button
  - find_assignee_name, is_chore_completed, priority_class
- Extract view_family_member as reusable helper
- Update systemd service description
Multiple agents of the same type (e.g., shelley) can now get unique IDs.

Usage:
  ./scripts/agent-id init <type> <task>  - Register and get ID like 'shelley:a3f2b1c0'
  ./scripts/agent-id log <message>       - Log with ID auto-included
  ./scripts/agent-id list                - Show active agents and recent log
  ./scripts/agent-id cleanup             - Remove stale sessions

Updated AGENTS.md with new identification system documentation.
- Add DeleteTarget type to track what's being deleted
- Add confirm_delete state to Model
- Replace immediate delete with RequestDelete* messages that show confirmation
- Add ConfirmDelete and CancelDelete messages
- Add modal dialog component with Cancel/Delete buttons
- Style modal with backdrop blur and smooth animation
- Remove scripts/agent-id (now a standalone project)
- Update AGENTS.md to reference hive command
- hive is installed at ~/bin/hive
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u main:home-chores-bot-main
git switch home-chores-bot-main

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch main
git merge --no-ff home-chores-bot-main
git switch home-chores-bot-main
git rebase main
git switch main
git merge --ff-only home-chores-bot-main
git switch home-chores-bot-main
git rebase main
git switch main
git merge --no-ff home-chores-bot-main
git switch main
git merge --squash home-chores-bot-main
git switch main
git merge --ff-only home-chores-bot-main
git switch main
git merge home-chores-bot-main
git push origin main
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
kwila/home-chores!1
No description provided.