# Bangle.ts A generic project setup for compiling apps from Typescript to Bangle.js ready, readable JavaScript. The types are now automatically generated by a script (see below), although they are still a work-in-progress. ## Compilation Install [npm](https://www.npmjs.com/get-npm) and node.js if you haven't already. We recommend using a version manager like nvm, which is also referenced in the linked documentation. Make sure you are using node version 16 by running `nvm use 16` and npm version ^8 by running `npm -v`. If the latter version is incorrect, run `npm i -g npm@^8`. After having installed npm for your platform, open a terminal, and navigate into the `/typescript` folder. Then run: ``` npm ci ``` to install the project's build tools, and: ``` npm run build ``` To build all Typescript apps and widgets. The last command will generate the `app.js` files containing the transpiled code for the Bangle.js. ## Generating types To generate the types, ensure this repository and [Espruino](https://github.com/espruino/Espruino) are in the same folder. From the Espruino folder run: ``` node scripts/build_types.js ``` This will update the file in `types/main.d.ts`.