Automatica is a open source building management software.
100K+
Donate DogeCoin: DPVz6RSAJrXZqTF4sGXpS1dqwvU36hSaAQ
Automatica is a building management system thats runs on .NET Core and is built to run on every OS. It is able to connect different automation systems and generate a rich visualization with a powerfull rule engine. Try it as your smart home hub today.
I currently use the system on a Raspberry.PI3. It runs also on Windows and Mac, but I have only built a build system for the raspberry right now. If you need Automatica.Core for Windows/Mac just create an Issue.
You can download the latest image & binaries here
At the moment the following drivers & logics are implemented and ready to use, also all the drivers & logics bellow will be shipped by default.
This project is a mono repository. The master & develop branch will be splitted nightly.
The Structure of the project is as follows.
.
├── automatica.build/ # Some build tools for the project (submodule repo)
├── bin/ # Bin tools for splitting the repo
├── build/ # Some build tools for the project
├── docker/ # Docker build files
├── documentation/ # docfx documentation source
├── images/ # Image files displayed in the readme.md
├── src/ # Source files
| ├── automatica.core # The core system for automatica.core
| ├── automatica.drivers # Automatica drivers - split repository
| ├── automatica.logics # Automatica logics - split repository
├── LICENSE
└── README.md
Make sure that you have built the frontend first.
cd src/automatica.core/Automatica.WebNew
npm install
npm run start
The angular dist folder is in src/automatica.core/Automatica.Core/wwwroot
cd src/automatica.core
dotnet restore
dotnet build
or open the src/automatica.core/automatica.core.sln with Visual Studio an hit F5.
You can download the latest plugins with the automatica-cli. More here
Please refer to each project's style and contribution guidelines for submitting patches and additions. In general, we follow the "fork-and-pull" Git workflow.
NOTE: Be sure to merge the latest from "upstream" before making a pull request! Pull request must have no merge conflicts!
Any help is appreciated!
Docker images will be build daily. The automaticacore image is here available.
There is also a automaticacore_proxy image which represents an nginx reverse proxy.
docker run -it -p 5001:5001 automaticacore/automatica:latest-develop --name automatica
Automatica works with different database systems. Currently we support MySQL and SQlite.
The first startup can takeup some time, because the database needs to be initialized.
$ docker run -it \
-p 5001:5001 \
--mount type=bind,source=~/database,target=/app/database \
-e DATABASE_TYPE="sqlite" \
-e ConnectionStrings:"AutomaticaDatabaseSqlite=Data Source=/app/database/automatica.core.db" \
--name automaticacore \
automaticacore/automatica:latest-develop
You need to provide a maria-db server and enter the credentials in the environment variable in the docker run command:
$ docker run -it \
-p 5001:5001 \
-e DATABASE_TYPE="mysql" \
-e ConnectionStrings:"AutomaticaDatabaseMaria=Server=<server>;User Id=<username>;Password=<password>;Database=<db-name>" \
--name automaticacore \
automaticacore/automatica:latest-develop
To just play around with automatica.core use this docker-compose configuration.
version: '3.3'
services:
automatica:
image: automaticacore/automaticacore:develop-latest
restart: always
ports:
- "5001:5001"
nginx:
image: automaticacore/automaticacore_proxy:develop-latest
restart: always
ports:
- "80:80"
links:
- automatica
Things I want to implement in the near future - help is appreciated!
Configuration
Logic editor
Visualization
Content type
Image
Digest
sha256:a65024343…
Size
203.7 MB
Last updated
almost 2 years ago
docker pull automaticacore/automatica:8.1.0.1947-develop