Commit Graph

14 Commits

Author SHA1 Message Date
walkpan
5f09c6f144 feat: device detail page with controls and logs, broker management page
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-29 22:04:49 +08:00
walkpan
4c16e5c0c9 feat: dashboard and devices list pages with cards, toggle, and add device modal
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-29 22:02:23 +08:00
walkpan
52fbb1a15a feat: API client, WebSocket composable, and Pinia device store
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-29 21:59:50 +08:00
walkpan
f02ff5db0c feat: Vue 3 project scaffolding with Tailwind, Router, Pinia, and Sidebar
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-29 21:58:14 +08:00
walkpan
c4d35be54d fix: Windows event loop compatibility, EMQX API response handling, and test fix
- Add WindowsSelectorEventLoopPolicy for paho-mqtt on Windows
- Handle EMQX /status plain text and /metrics list responses
- Fix test_default_settings to ignore .env file
- Add __main__.py for python -m mqtt_home support

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-29 21:52:20 +08:00
walkpan
bac099c805 feat: CLI commands for device management, broker monitoring, and serve
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-29 21:48:08 +08:00
walkpan
957f489a0d feat: FastAPI app with REST API routes and WebSocket endpoint
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-29 21:46:00 +08:00
walkpan
abb170ace6 feat: HA Discovery protocol handler for auto-registering devices
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-29 21:42:49 +08:00
walkpan
2614ae8880 feat: device registry with CRUD, state tracking, command sending, and log management
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-29 21:40:52 +08:00
walkpan
afe9de51c5 feat: MQTT client with reconnection, topic matching, and callback dispatch
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-29 21:37:03 +08:00
walkpan
79b2878b3d feat: Pydantic schemas and EMQX REST API client
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-29 21:32:45 +08:00
walkpan
455ed4ad5e feat: database setup with SQLAlchemy ORM models for Device and DeviceLog
- Replace minimal database.py with full SQLAlchemy async setup
- Create Device and DeviceLog models with proper relationships
- Add tests for model creation and relationship functionality
- Fixed lazy loading issue in tests by avoiding .count() on dynamic relationships
2026-03-29 21:28:55 +08:00
walkpan
8b925263a2 feat: project skeleton with config, dependencies, and test setup
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-29 21:26:00 +08:00
walkpan
ce10907619 docs: design spec and backend implementation plan 2026-03-29 21:21:44 +08:00