Mainflux UI, dashboard for Mainflux Industrial IoT Messaging and Device Management Server.
N.B. Mainflux UI service is WIP and not suitable for deployment at this moment. You are welcome to contribute and improve it.
To find out more about the Mainflux IoT, please see our wiki.
You'll need the following software installed to get started.
- Node 6 or higher, we recommend current LTS version, together with NPM 3 or higher.
- Angular-cli Newst version with Webpack integration
-
- Depending on how Node is configured on your machine, you may need to run `sudo npm install
- Git: Use the installer for your OS.
- Windows users can also try Git for Windows.
- For local Development with Mainflux composition running localy, Chrome extension for Cross origin is required. Because composition is running on different port then our Angular app, we have cross origin.
Clone this repository
git clone https://github.com/mainflux/dashflux
Change into the directory.
cd dashflux
Install the dependencies. If you're running Mac OS or Linux, you may need to run sudo npm install
instead, depending on how your machine is configured.
npm install
Set the appropriate endpoint URL's in environment.ts (for local development will probably be 0.0.0.0:)
To start the server, run:
ng serve
This will run and assemble our app.
Now go to localhost:4200
in your browser to see it in action.
We use nginx to serve dashflux from docker container, supporting environments using docker multi-stage builds. Dashflux docker image is available on Dockerhub mainflux/dashflux
If you want to build image locally, you can
Build image using the development environment:
docker build -f docker/Dockerfile -t dashflux:dev --build-arg env=dev .
Build image using the production environment:
docker build -t dashflux:prod .
You can test image running
docker run -p 80:80 dashflux:dev
This will run dashflux in docker container.
Now go to http://localhost
in your browser to see it in action.
- Follow angular-cli documentation
- Follow official angular style guide
Visit mainflux official mailing list.