This website is used for a scientific paper as a biofeedback system that helps calm down people with stress through breathing exercises. The website implements the usage of a Bluetooth Low Energy (BLE) spirometer SpiroMagic that is used for these breathing exercises.
There is no public API available for the SpiroMagic spirometer to read its output, so the GATT services and characteristics were acquired by using the LightBlue® BLE scanning tool.
This project was generated with Angular CLI and uses ThreeJS and Web Bluetooth API combined with Angular 12.9 and Bootstrap in Version 4.6.
- Three Extensions: https://github.com/Itee/three-full
- Three-Full Types: https://discourse.threejs.org/t/angular-threejs/2739/7
- Web Bluetooth module: https://github.com/manekinekko/angular-web-bluetooth
- Web Bluetooth examples: https://googlechrome.github.io/samples/web-bluetooth/
- Firebase CLI: https://firebase.google.com/docs/cli
Run ng serve
for a dev server. Navigate to http://localhost:4200/
. The app will automatically reload if you change
any of the source files.
The repository is set up with GitHub actions to deploy directly to a Firebase hosting application. The deployment action can be seen here.
Run ng generate component component-name
to generate a new component. You can also
use ng generate directive|pipe|service|class|guard|interface|enum|module
.
To get more help on the Angular CLI use ng help
or go check out
the Angular CLI README.