This is an IoT project that solves a simple problem: I do not have a way to track my flossing date, time, and duration.
This is my first IoT project. I wanted to have a simple project which was just complex enough to allow for implementing various technologies. The list of used technologies can be found at the end of this document.
- Particle Photon
- Particle Build for the firmware code
- Production app
- Physical stand
- Install Node and npm
- Global install yarn:
npm install -g yarn - Install Heroku CLI:
brew install heroku - Copy env file:
cp .env-example .env - Enable linting in Sublime Text 3
- Install
SublimeLinter - Install
SublimeLinter-eslint - Install
SublimeLinter-flow
- Install
- Enable auto-styling in Sublime Text 3
- Install
JsPrettier - In Terminal, run
which prettier - In Terminal, run
which node - Sublime Text > Preferences > Package Settings > JsPrettier > Settings - User
- Install
{
"prettier_cli_path": "<result of `which prettier`>",
"node_path": "<result of `which node`>",
"auto_format_on_save": true,
"prettier_options": {
"parser": "babylon",
"singleQuote": true,
"printWidth": 80,
"trailingComma": "es5",
"bracketSpacing": true,
"jsxBracketSameLine": false,
"semi": false,
"tabs": false
}
}- Install dependencies:
yarn install - Start server:
yarn watch:server
- Hardware
- Particle Photon
- LED
- Photoresistor
- Firmware
- Particle Build
- Software
- Node
- Express
(none)
- WebSockets
- PWA