Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ulisesgascon/node-zowi
Nodejs wrapper for BQ Zowi Robot
https://github.com/ulisesgascon/node-zowi
Last synced: 6 days ago
JSON representation
Nodejs wrapper for BQ Zowi Robot
- Host: GitHub
- URL: https://github.com/ulisesgascon/node-zowi
- Owner: UlisesGascon
- License: gpl-3.0
- Created: 2019-06-22T09:12:43.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2023-01-22T00:57:13.000Z (over 1 year ago)
- Last Synced: 2024-09-29T06:21:44.291Z (6 days ago)
- Language: JavaScript
- Homepage: https://www.npmjs.com/package/node-zowi
- Size: 1.12 MB
- Stars: 5
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
node-zowi
Nodejs wrapper for BQ Zowi Robot
Thanks Teba GΓ³mez and Felipe Polo my amazing students for your support π# About
Nodejs wrapper for [BQ Zowi Robot](https://www.xataka.com/analisis/probamos-zowi-un-robot-con-cerebro-arduino-que-puede-dar-mas-de-lo-que-aparenta)
## β€οΈ Awesome Features:
- Out of the box simple Interface. π₯
- USB Support (including auto-port selection) πΊ
- Commands library mapped out (gestures, sounds, buzzer, movements...) π
- Direct support to listen Bus communications π
- General information available with a configurable interval (distance, noise, battery level...) πΎ
- `debug` is supported πͺ
- Refresh time is customizable π§
- Easy to use and great test coverage β## Installation
```bash
npm install node-zowi
```## Usage
```js
const zowi = require('./lib')();(async () => {
const { commands } = zowi
const { getHealth, onClaim, obey } = await zowi.start({ checkVitals: true })// Let's check the health in 5 segs
setTimeout(() => {
console.log('Health:', getHealth())
}, 5000)// Log all the messages from the serial comms
onClaim(console.log)// Let's send some commands
await obey(commands.buzzer.tone(3000, 1000))
console.log('Sent Tone Request!')await obey(commands.sounds.ohOoh2())
console.log('Sent OhOhh Sound Request!')await obey(commands.gestures.superHappy())
console.log('Sent Gesture Request!')
})()
```## Making off :muscle:
This project was under development for a very long time across engineering clasess with my students and software events.
Finally I managed to finish the library and publish a solid initial version.
#### Fictizia Master'19
![Node-zowi demo wirh my students](.github/node_zowi.jpg)
_[Full video](https://twitter.com/KoolTheba/status/1142429134750191617)_
#### JsDayCanarias 2019
![Node-zowi development during the JsDayCanarias 2019. Ulises Gascon and Felipe Polo](.github/jsday_canarias.jpg)## Built With
Development only:
- [Standard](https://www.npmjs.com/package/standard) - Linting propuses
- [Husky](https://www.npmjs.com/package/husky) - Git Hooks
- [commitlint](https://www.npmjs.com/package/@commitlint/cli) - Linting commit messages
- [jest](https://www.npmjs.com/package/jest) - Testing
- [standard](https://www.npmjs.com/package/standard) - Linting
- [standard-version](https://www.npmjs.com/package/standard-version) - Manage changelog and releasesProduction only:
- [debug](https://www.npmjs.com/package/debug) - Debug the app
- [serialport](https://www.npmjs.com/package/serialport) - Access serial ports with JavaScript
- [@serialport/parser-readline](https://www.npmjs.com/package/@serialport/parser-readline) - Transfirmation## Contributing
Please read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests to us.
## Versioning
We use [SemVer](http://semver.org/) for versioning. For the versions available, see the [tags on this repository](https://github.com/ulisesGascon/node-zowi/tags).
## Authors
- **Ulises GascΓ³n** - Initial work- - [@ulisesGascon](https://github.com/ulisesGascon)
See also the list of [contributors](https://github.com/ulisesGascon/node-zowi/contributors) who participated in this project.
## License
This project is licensed under the GNU AGPL3.0 License - see the [LICENSE.md](LICENSE.md) file for details
## Acknowledgments
- This project is under development, but you can help us to improve it! We :heart: FOSS!