Home Automation
Master Branch :
Dev Branch :
Description
This library contains three classes :
-
convertTemperature
- This class converts temperature from different units.
-
thermostat
- This class contains everything you need to create a thermostat
-
jsonTHermostat
- This class contains everything you need to create a thermostat with json arguments and returns.
-
httpThermostat
- This class contains everything you need to create a httpThermostat instance by using a httpTemperatureSensor
-
httpTemperatureSensor
- This class contains everyhting you need to create a temperature sensor that gets its data from a REST API. You can give this url when creating an instance of this class with its constructor.
For more information about each class and how to use them, you can check the github pages from this project. Github Pages
Installation instructions
Make sure youre project is already an npm project:
npm init
To pull this project from npm you can use the next command :
npm i @geylianlingier/home-automation
Update package :
npm install
Running eslinter :
npm run lint
Updating docs :
npm run docs
Versions
v0.1
Creating first thermostat class, in next versions these classes were refactored.
v0.2
In this version the JSON Thermostat was added to the library.
v0.3
Adding support for units to the json class.
v0.4.0
Adding the library to npmjs.com.
v0.4.1
Added documentation.
v0.4.2
Cleaning the library:
-No Javascript documents -Also cleaning all classes from bugging code
v0.4.3
Added ES Linter and Markdown Linter + badge.
running linter :
npm run lint
v0.5
Added HTTPTemperatureSensor class and HTTPThermostat class
v0.6
Added typedoc documentation.
creating documentation docs :
npm run docs
v0.6.1
solve Github pages bug.
v0.7.0
Organized code better to handle any kind of change:
- Single Responsibility
- Managing Dependencies
v0.7.1
In v0.6.1 the github page bug was solved with adding .nojeckyll
, But when using npm run docs
the added document disappeared.
v0.8.0
In this version most of the test are added to check if the classes work correctly. I also added a few methods to use classes and to create test easier.
Also added a new github badge for github action tests.
License
This project is licensed with MIT.
To Do
- The JSONThermostatSettings interface gets a unit as a string, but it should be of the Unit type. So the code in that class must be refactored.
Author Information
Hello, I am Geylian, and I made this library for an assignment for school. Please check my Github