Project Overview
The SmartHome Lite project is a distributed smart-home system built with FastAPI, SQLAlchemy and PostgreSQL (relational data and time series via the TimescaleDB extension), a Next UI (App Router, TypeScript, Tailwind CSS) and an Android app in Kotlin with Jetpack Compose. It covers lights and sockets, automation rules, presence detection and smart dimming.
The project also includes JWT authentication, password hashing with bcrypt, Pydantic validation and a Raspberry Pi node running a Flask API and Z-Wave JS UI. The big-projects/smarthome-lite folder in the all-my-projects GitHub repository points to this dedicated repo.
The system is designed to deliver a smooth user experience on web and mobile, with automated tests (Pytest), presence and luminance charts, detailed documentation (README) and the screenshot gallery below.
Main Features
Device management and dashboard
ON/OFF and brightness control for lights, socket management and a centralized equipment view on web and mobile.
Presence detection and history
Z-Wave sensor (e.g. MultiSensor 7), events pushed to the backend and historical data for analytics and rules.
IF-THEN engine and scenarios
Rule CRUD, automatic evaluation and predefined scenarios to chain conditions and actions.
Machine learning and smart dimming
Scenario classification, intensity regression, user-habit clustering (documented path) and adaptation to ambient light.
Visualization and monitoring
Presence and luminance charts, measurement tracking and automatic adjustment history on the Next dashboard and Android app.
Raspberry Pi gateway and Z-Wave
Local Flask API, Z-Wave JS UI integration (Socket.IO / WebSocket) and an HTTP contract aligned with the backend to drive radio nodes.
Project Gallery
Web dashboard
Admin
Mobile app (Kotlin)
Monitoring
Smart dimming
Z-Wave control panel
API
Artificial intelligence
Git repository (branches)