This is a AngularJS powered dashboard, Node.js and Sqlite3 based backend and Arduino project. Kind a AIO package, but all components: backend, frontend and arduino part you may use independently of each other.

1
2
3
4
5
6
_ _ __ _ _ ___ _
(_) ___ | |_ / _\(_) _ __ ___ _ __ | | ___ / \ __ _ ___ | |__
| | / _ \ | __|\ \ | || '_ ` _ \ | '_ \ | | / _ \ / /\ // _` |/ __|| '_ \
| || (_) || |_ _\ \| || | | | | || |_) || || __/ / /_//| (_| |\__ \| | | |
|_| \___/ \__|\__/|_||_| |_| |_|| .__/ |_| \___|/___,' \__,_||___/|_| |_|
|_|

Demo

Contact

razblade@gmail.com

Interaction scheme

{sensors} > {arduino} > REST API (JSON) > {backend} < REST API (JSON) > {frontend}

Current version - 0.52

  • added time and date filteres
  • new alert block
  • backend speedups on day view
  • fix autorefresh

Frontend requirements

not using depends:

Backend requirements

arduino “requirements”

  • arduino uno r3 or clone
  • esp8266 as WiFi shield
  • DHT 11\22, photoresistor, 1602 LCD

Frontend Installation

1
2
3
4
5
6
7
8
9
10
11
$ cd Frontent # (or you name it folder)
# install depends
$ bower install angularjs bootstrap angular-nvd3 font-awesome angular-xeditable
# if you got your onw backend, change IP:PORT in main.js
$ vim assets/js/main.js
.....
$scope.backend = {
'host':'http://89.108.88.202:3000/',
};
.....
# done

Backend Installation

1
2
3
4
5
6
7
8
9
$ cd Backend # (or you name it folder)
# install depends
$ npm install express sqlite3 body-parser
# to change default IP:PORT
$ vim restApiDashboard.js
.....
restapi.listen(3000);
.....
# done

License: MIT

The MIT License (MIT)