Skip to content

Repository files navigation

LiteAssistant

⚠️ 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.

Features

  • 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.

Screenshot

Prerequisites

  • 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)

Installation & Running

Docker (Recommended)

  1. Clone the repository.
  2. Create a .env file based on .env.example.
  3. Run with Docker Compose:
    docker-compose up -d --build
  4. Access the application at http://localhost:8000.

Manual Setup

  1. 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
  2. Frontend:

    cd frontend
    npm install
    npm run build
    # Copy dist contents to backend/static (handled automatically by build script if configured)

Usage

  1. Login: Default credentials are admin / admin123. Change these immediately in your Profile.
  2. Settings: Go to Settings and configure your MQTT broker details.
  3. Discovery: Click "Trigger Discovery" to find your Tasmota devices.
  4. Dashboard: Pin devices to your dashboard for quick access.

Tech Stack

  • Backend: FastAPI, SQLAlchemy, AsyncPG
  • Frontend: React, Vite, TailwindCSS
  • Database: PostgreSQL

License

MIT

About

A Lightweight home automation dashboard designed to control, monitor and automate Tasmota devices.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages