Skip to content

NewEvolution/thermostats

Repository files navigation

Thermostats

A NodeJS API serving user provided home thermostat setting statistics from PostgreSQL to an AngularJS front end, with SmartyStreets ZIP Code lookups and jVectorMap data visualization.

thermostats screenshot

About

This app was written out of curiosity about people's heating and cooling habits and a desire to work with map-based informational display.

Installation & Execution

  • Install NodeJS
  • Install PostgreSQL
  • Sign up for a free SmartyStreets API access
  • Start PostgreSQL
  • Clone down this repository
  • In a terminal within the repository directory:
    • Set your SmartyStreets Secret Keys as environment variables
      • Your key's Auth ID as AUTHID
      • Your key's Auth Token as AUTHTOKEN
    • Install required Node modules by running npm install
    • Install required Bower components by running ./node_modules/.bin/bower install
    • Generate the jVectorMap script by running ./public/vendor/jvectormap/build.sh
    • Install the jVectorMap script by running mv jquery.jvectormap.min.js public/vendor/jvectormap/
    • Start the server by running node server.js

Usage

Full Site
  • In the browser of your choice, go to http://localhost:3000.
  • Click any state on the map to open the data entry modal window.
  • Radio buttons at the bottom of the page switch display between heating and cooling values.
  • States will change their color values based on the relative average heating and cooling values.
  • Mousing over a state which has data will display the average heating and cooling values.
API

About

Home thermostat survey & graphing application

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published