Features
- ThreeJS (for 3D graphics)
- Typescript (can be ripped out for those who like writing pure js)
- ESLint (code checking)
- Prettier (code formatting)
- Babel (transpiling)
- Webpack (bundling)
Assumptions
Knowledge of the following:
- How to connect and upload a packaged app to a KaiOS device. See here
- How to use npm/yarn to install dependencies
npm ci
- How to run the scripts from package.json
npm run <script-name>
Running Dev
The project uses webpack-dev-server which will watch for changes to your files and update the browser accordingly. You will have to wait for webpack to finish building before it will be accessible at localhost:8080
run dev with:
npm run start:dev
dev will run from <project_root>/dev/
Building Dist
Build with:
npm run build:all
This will build to the <project_root>/dist/
It is this directory that you will attempt to load onto a kaios device as it should have copied over a basic manifest.webapp
Testing
I tend to use an older browser based around kaiOS 2.5.1 which is 48-50 (according to the kaios dev blog v59 is the last compatible version.)
You can find the older versions here or dev editions here
You can find adb helper binaries here and sources here for WebIDE. You will need a dev edition of firefox and set the following in firefox’s about:config
- xpinstall.signatures.required should be set to false
- extensions.legacy.enabled should be set to true
Web server: I use Servez because it is a no fuss gui to launch a basic server. I point it to the dist/ directory post build and run the older browser on the localhost:8080 url