Skip to content

Anisan/osysHome

Repository files navigation

Mailing list : test

header

osysHome

osysHome (Object System smartHome) is smart home system developed in Python that offers users flexible and powerful tools to automate and manage their living space. The osysHome system is based on object-oriented programming, which ensures modularity, ease of use and ease of expansion of functionality.

  • Support for various communication protocols
  • Modular architecture
  • Intuitive interface
  • Automation and scripts
  • Security and privacy
  • Extensibility and integration
  • Built-in documentation

Install

  • git clone https://github.com/Anisan/osysHome.git
  • cd osysHome
  • Create virtual environment
    • Linux: python3 -m venv venv
    • Windows: python -m venv venv
  • Activate virtual environment
    • Linux: source venv/bin/activate
    • Windows: venv\Scripts\activate
  • pip install -r requirements.txt
  • mkdir plugins

Install recommended modules

Settings

  • Create settings file
    • Linux: cp settings_sample.py settings.py
    • Windows: copy settings_sample.py settings.py
  • Change settings db in settings.py

Mirgrate DB

  • flask --app main.py db init
  • flask --app main.py db migrate
  • flask --app main.py db upgrade

Important

DO NOT DELETE migrations folder!!! Otherwise, problems will arise with updating the database structure.

Start

  • Linux: python3 main.py
  • Windows: python main.py

Update

Install module

  • Open directory plugins
  • Create directory module
  • Copy module in directory module
  • flask --app main.py db migrate
  • flask --app main.py db upgrade
  • Restart osysHome

Update module

  • Copy module in directory module
  • flask --app main.py db migrate
  • flask --app main.py db upgrade
  • Restart osysHome

Create docs

pdoc --docformat google --no-show-source --output-dir docs settings_sample.py app plugins

Systemd

Use osyshome.service

Docker

  • sudo docker build -t osyshome .
  • sudo docker run -d --network host -p 5000:5000 osyshome