OpenHausIO / frontend

User interface for controlling things
2 stars 1 forks source link
frontend home interface javascript nginx smart user vue webserver websocket

Frontend

Recommended IDE Setup

VSCode + Volar (and disable Vetur) + TypeScript Vue Plugin (Volar).

Project Setup

npm install

Compile and Hot-Reload for Development

npm run dev

Compile and Minify for Production

npm run build

Demo

There exsits a public demo: http://demo.open-haus.io
It is deployed with docker and runs the frontend & backend container.
The instance is rested to its default values every 10 Minutes.
No authentication required, full API support.

Docker image

Environment variables

Name Default value Description
NODE_ENV production node.js environment
NGINX_HOSTNAME open-haus.lan, open-haus.local nginx hostname
BACKEND_PROTOCOL http OpenHaus backend http protocol
BACKEND_HOST 127.0.0.1 OpenHaus backend http host
BACKEND_PORT 8080 OpenHaus backend http port
RESOLVER 127.0.0.11 DNS resolver used inside the backend location block.

NOTE:
You can also use the environment variables BACKEND_PROTOCOL, BACKEND_HOST & BACKEND_PORT while you develop local.
E.g. run BACKEND_HOST=open-haus.local npm run dev to use your local hosted backend instead of the loopback address.

Build the image

npm run build
npm run build:docker

Start the docker image

docker run --net=host --rm --name frontend --env BACKEND_HOST=172.17.0.1 openhaus/frontend:latest

The backend runs on the docker host

Export the Image

docker save openhaus/frontend:latest | gzip > ./frontend-vX.X.X-docker.tgz

Screenshots

Dashboard

Dashboard-Widgets

Rooms

Room-Infobar

Endpoints

EndpointInfobar

Devices

Devices