Introduction #
Budo is a tool to build and run applications written in JavaScript, TypeScript, Lua, or WebAssembly. The same code can then run on Desktop, Android, and the Web. Budo provides an API that gives your code a direct creative surface: 2D canvas drawing, 3D GL primitives, user input, audio, MIDI, SQLite, files, HTTP, sensors, ai inference (ONNX and llamacpp models) and more.
This documentation is written for developers who want to build apps with Budo. It starts with a tutorial, then goes deeper into the runtime model, rendering pipeline, data APIs, platform behavior, and language-specific details.
Where to begin #
You can run most of the code snippets directly in the page by hitting the run button on the top right of them (Web is one of the Budo's targets).
The playground allows to experience the Budo programming feeling in an interactive coding environment.
To get and run the budo command locally, use the installation page.
If you want to jump right away, the Getting started section will walk you create a project, draw a scene, add input, keep a tiny bit of state, and run your app locally.
The next sections go deeper into each aspect of the Budo platform.
The API reference contains all the API constants and functions provided by Budo.