Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/mobsya/thymio-js-api-demo

Sample code show casing the use of the javascript api for thymio
https://github.com/mobsya/thymio-js-api-demo

api demo-app educational educational-software nodejs robot-framework robots sample-app thymio

Last synced: 16 days ago
JSON representation

Sample code show casing the use of the javascript api for thymio

Awesome Lists containing this project

README

        

# thymio-js-api-demo

This simple javascript application showcases how to use the Thymio API from a browser or a node-based app

## Getting started

### Install the switch

TODO

### Install npm

Npm is a package manager for JavaScript, you will need it to work with the Thymio API

[Learn more here](https://docs.npmjs.com/getting-started/installing-node#install-npm--manage-npm-versions).

Note that despite depending on Node to install and build the Thymio JS API, it is fully compatible with browsers
and Node.

### Install the dependencies

Run `npm i` in the cloned directory to install the required dependencies.

### Launch the web app

Run `npm run browser`, then open `dist/index.html` in your browser.
The web-based version outputs in the browser's console.

## Launch the Node-based application

Run `npm start`

## How does it work?

The thymio API is distributed as a [npm package](https://www.npmjs.com/package/@mobsya-association/thymio-api).
It can be installed with `npm -i @mobsya-association/thymio-api`.

This demo project also depends on:
* Webpack to orchestrate the bundling of the application for both node and browser
* Babel to convert the code in a flavor of Javascript compatible with older versions of web browsers

The code is in `src` and gets compiled into `dist`.

## What next.

You can copy this project or get inspiration from it to start working on web-applications compatible with thymio.

* [Thymio JS API](https://readthedocs.org/projects/aseba/)
* [Webpack](https://webpack.js.org/)
* [NPM](https://docs.npmjs.com/)
* [Babel](https://babeljs.io/)