⚠️ VIBECODED APPLICATION This application was "vibecoded" (generated by AI) and is intended for experimental use. It performs a specific subset of home automation tasks, primarily controlling Tasmota switches via MQTT. Use at your own risk. Ensure you trust the code and the environment before deploying.
LiteAssistant is a lightweight home automation dashboard designed to control and monitor Tasmota devices. It provides a clean, modern interface for managing switches, schedules, automations, and notifications.
- Auto-Discovery: Automatically discovers Tasmota devices on your MQTT broker.
- Device Control: Toggle switches, view sensor data, and manage device settings.
- Historical Data: Shows historical data in graph for your sensors.
- Schedules: Create flexible schedules (Once, Daily, Weekly, Interval) for your devices.
- Interval Schedules: Run devices periodically (e.g., turn on for 10 seconds every 5 minutes).
- Automations: Create simple "If This Then That" rules based on device states or sensor values.
- Notifications: Get notified via Telegram or Ntfy when events occur.
- Dashboard: customizable dashboard to view your most important devices.
- Profile Management: Update your username and password.
- AI Agent Integration (MCP): Includes a Model Context Protocol (MCP) sidecar server exposing your home automation to AI agents (like Claude Desktop or PicoClaw). AI can read sensor data, discover devices, control multi-channel relays, and create interval schedules natively.
- Python 3.9+
- Node.js 16+ (for building frontend)
- PostgreSQL (or SQLite for testing)
- MQTT Broker (e.g., Mosquitto)
- Tasmota Devices (configured to use the MQTT broker)
- Clone the repository.
- Create a
.envfile based on.env.example. - Run with Docker Compose:
docker-compose up -d --build
- Access the application at
http://localhost:8000.
-
Backend:
# Create virtual environment python3 -m venv .venv source .venv/bin/activate # Install dependencies pip install -r backend/requirements.txt # Run server uvicorn backend.main:app --host 0.0.0.0 --port 8000 --reload
-
Frontend:
cd frontend npm install npm run build # Copy dist contents to backend/static (handled automatically by build script if configured)
- Login: Default credentials are
admin/admin123. Change these immediately in your Profile. - Settings: Go to Settings and configure your MQTT broker details.
- Discovery: Click "Trigger Discovery" to find your Tasmota devices.
- Dashboard: Pin devices to your dashboard for quick access.
- Backend: FastAPI, SQLAlchemy, AsyncPG
- Frontend: React, Vite, TailwindCSS
- Database: PostgreSQL
MIT
