1- # 🏠 Shelly Manager
1+ # Shelly Manager
22
3- ** Local management and automation for Shelly IoT devices**
3+ Local management for Shelly IoT devices without cloud connectivity.
44
55[ ![ License: MIT] ( https://img.shields.io/badge/License-MIT-yellow.svg )] ( https://opensource.org/licenses/MIT )
66[ ![ GitHub release] ( https://img.shields.io/github/release/jfmlima/shelly-manager.svg )] ( https://github.com/jfmlima/shelly-manager/releases )
7- [ ![ Docker Pulls] ( https://img.shields.io/docker/pulls/ghcr.io/jfmlima/shelly-manager/api )] ( https://github.com/jfmlima/shelly-manager/pkgs/container/shelly-manager%2Fapi )
7+ [ ![ API Pulls] ( https://img.shields.io/docker/pulls/ghcr.io/jfmlima/shelly-manager-api )] ( https://github.com/jfmlima/shelly-manager/pkgs/container/shelly-manager-api )
8+ [ ![ CLI Pulls] ( https://img.shields.io/docker/pulls/ghcr.io/jfmlima/shelly-manager-cli )] ( https://github.com/jfmlima/shelly-manager/pkgs/container/shelly-manager-cli )
9+ [ ![ Web Pulls] ( https://img.shields.io/docker/pulls/ghcr.io/jfmlima/shelly-manager-web )] ( https://github.com/jfmlima/shelly-manager/pkgs/container/shelly-manager-web )
810
9- Shelly Manager is a comprehensive, ** privacy-first ** solution for managing Shelly IoT devices locally on your network. No cloud dependency, no data sharing - just powerful local control over your smart home devices .
11+ Manage Shelly devices on your local network without connecting them to the Shelly Cloud. Scan for devices, update firmware, manage configurations, and monitor status - all locally .
1012
11- ## ✨ Why Shelly Manager?
13+ ## Features
1214
13- - ** 🔒 Privacy First** : All operations happen locally - no cloud required
14- - ** 🚀 Professional Grade** : Enterprise-ready architecture with comprehensive testing
15- - ** 🎯 Shelly Specialized** : Deep integration with Shelly device features and protocols
16- - ** 🔧 Multiple Interfaces** : Web UI for management, CLI for automation, REST API for integration
17- - ** 📦 Easy Deployment** : Docker containers for quick setup and scalability
18-
19- ## 🎯 Key Features
20-
21- ### 🔍 ** Device Discovery & Management**
22-
23- - Network scanning with IP ranges and CIDR notation
24- - Automatic device detection and status monitoring
15+ - Device discovery by network scanning
16+ - Firmware update management (stable/beta channels)
17+ - Device configuration changes
2518- Bulk operations across multiple devices
26- - Configuration-based device organization
27-
28- ### 🔄 ** Firmware Management**
29-
30- - Automated firmware update checking
31- - Safe firmware updates with rollback protection
32- - Channel selection (stable/beta)
33- - Update progress monitoring
34-
35- ### ⚙️ ** Configuration Management**
19+ - Status monitoring
3620
37- - Complete device configuration control
38- - JSON-based configuration templates
39- - Bulk configuration deployment
40- - Configuration backup and restore
21+ Available as:
4122
42- ### 📊 ** Rich Interfaces**
23+ - Web interface
24+ - Command line tool
25+ - REST API
4326
44- - ** Web UI** : Modern, responsive interface for device management
45- - ** CLI Tool** : Powerful command-line interface for automation and scripting
46- - ** REST API** : Full-featured API for custom integrations
27+ ## Quick Start
4728
48- ### 🏗️ ** Enterprise Architecture **
29+ ### Docker
4930
50- - Clean Architecture principles with Domain-Driven Design
51- - Comprehensive test coverage with CI/CD
52- - Async/await support for high performance
53- - Type safety with full Python typing
54-
55- ## 🚀 Quick Start
56-
57- Choose your preferred way to run Shelly Manager:
58-
59- ### 🐳 Docker (Recommended)
60-
61- ** Web UI + API Stack** (Complete management interface):
31+ ** Web UI + API Stack** :
6232
6333``` yaml
6434services :
6535 api :
66- image : ghcr.io/jfmlima/shelly-manager/ api:latest
36+ image : ghcr.io/jfmlima/shelly-manager- api:latest
6737 ports :
6838 - " 8000:8000"
6939 volumes :
@@ -73,7 +43,7 @@ services:
7343 - PORT=8000
7444
7545 web :
76- image : ghcr.io/jfmlima/shelly-manager/ web:latest
46+ image : ghcr.io/jfmlima/shelly-manager- web:latest
7747 ports :
7848 - " 8080:8080"
7949 environment :
@@ -82,33 +52,33 @@ services:
8252 - api
8353` ` `
8454
85- **CLI Only** (For automation and scripting) :
55+ **CLI Only**:
8656
8757` ` ` bash
8858# Interactive device scanning
8959docker run --rm -it \
9060 -v ./config.json:/app/config.json:ro \
91- ghcr.io/jfmlima/shelly-manager/ cli:latest \
61+ ghcr.io/jfmlima/shelly-manager- cli:latest \
9262 scan --range 192.168.1.0/24
9363
9464# Check device status
9565docker run --rm -it \
96- ghcr.io/jfmlima/shelly-manager/ cli:latest \
66+ ghcr.io/jfmlima/shelly-manager- cli:latest \
9767 device status 192.168.1.100
9868
9969# Bulk firmware updates
10070docker run --rm -it \
10171 -v ./config.json:/app/config.json:ro \
102- ghcr.io/jfmlima/shelly-manager/ cli:latest \
72+ ghcr.io/jfmlima/shelly-manager- cli:latest \
10373 bulk update --from-config
10474```
10575
106- ** API Only** (For custom integrations) :
76+ ** API Only** :
10777
10878``` bash
10979docker run -p 8000:8000 \
11080 -v ./config.json:/app/config.json:ro \
111- ghcr.io/jfmlima/shelly-manager/ api:latest
81+ ghcr.io/jfmlima/shelly-manager- api:latest
11282```
11383
11484### 📋 Configuration
@@ -257,36 +227,6 @@ We welcome contributions! Here's how to get started:
257227- 💡 ** Feature Requests** : Describe your use case in an issue
258228- 💬 ** Questions** : Start a discussion for general questions
259229
260- ## 🌟 Why Choose Shelly Manager?
261-
262- ### For Home Lab Enthusiasts
263-
264- - ** Complete local control** without cloud dependencies
265- - ** Professional-grade tools** for managing your smart home
266- - ** Easy Docker deployment** for your home server
267-
268- ### For Network Administrators
269-
270- - ** Bulk device management** for commercial deployments
271- - ** API integration** for existing management systems
272- - ** Comprehensive monitoring** and configuration tools
273-
274- ### For Developers
275-
276- - ** Clean, documented APIs** for custom integrations
277- - ** Modern architecture** with comprehensive testing
278- - ** Multiple interfaces** (CLI, Web, REST API) for flexibility
279-
280- ### For Privacy-Conscious Users
281-
282- - ** No cloud connectivity** required
283- - ** Local network operation** only
284- - ** Open source** for complete transparency
285-
286- ## 📄 License
287-
288- This project is open source and available under the [ MIT License] ( LICENSE ) .
289-
290- ---
230+ ## License
291231
292- ** 🏠 Built for local control of your smart home • 🔒 Privacy-first • 🚀 Professional-grade **
232+ MIT License - see [ LICENSE ] ( LICENSE ) file.
0 commit comments