Skip to content

Repository files navigation

Handy Automator

A home automation system that you control with your hands.

Dependencies

Golang

Python

Make - Comes pre-installed on MacOS. On windows you can install it with scoop.sh or manually from this website.

Docker

Arduino IDE - Only for edge device code

Dev environment setup

  1. Clone the repo:
$ git clone https://github.com/caiocotts/handy-automator
  1. Create a .env file at the root of the project, filling all the varaibles specified in .env.example:
DB_PASSWORD=<the-password-to-the-database>
DB_URL=postgres://postgres:<the-password-to-the-database>@localhost:5432/postgres

GOOSE_DBSTRING=postgres://postgres:<the-password-to-the-database>@localhost:5432/postgres

JWT_SECRET=<enter-the-real-and-true-jwt-secret>

Use the Makefile to run tasks such as: running the system in development mode, managing the DB, and also generating the API code. Available Make commands can be viewed by running make help:

$ make help
Usage: make [TARGET]

Database:
  start-db            Instantiate a database container
  stop-db             Stop the database container
  destroy-db          Stop the database container and erase all its data
  seed-db             Seed the database with sample data
  mup                 Apply all migrations
  mdown               Undo the last migration
  migration           Create a new migration SQL file in db/migrations

Development:
  dm                  Start the decision-maker in development mode
  pu                  Start the processing-unit in development mode
  test-pu             Run the processing-unit test suite
  gen-api             Generate API code from the OpenAPI spec
  lint-api            Lint OpenAPI spec

Miscellaneous:
  help                Show this help message
  check-db-status     Check if the database is ready to accept connections (internal)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages