The Toit programming language
Small scripts.
Independent applications.
Toit is a language for writing scripts on your computer and applications on your ESP32. A readable syntax, an efficient runtime, and tools that work together.
Free and open source. Maintained by volunteers.
On your computer
Write scripts, process data, and automate everyday tasks. Build command-line applications with Toit’s CLI package.
Start scripting EmbeddedOn an ESP32
Work with sensors and peripherals. Run applications in separate containers and update them independently.
Explore embedded developmentThe language
A short example
Select Toit source filenames from a list and print them in alphabetical order. Short blocks
describe what to keep and what to do with each result; it refers to the current element.
Toit has classes, exceptions, and built-in types. You can start with a short script and add structure as it grows.
main:
files := ["test.toit", "README.md", "main.toit"]
sources := files.filter: it.ends-with ".toit"
sources.sort.do: print it
$ toit run sources.toit
main.toit test.toit
Beyond a single program
A runtime for independent applications.
On an embedded device, your application is one part of a running system. Toit containers let you install, stop, and update applications separately.
Keep a sensor application running while you replace another application. Build services that other containers can use.
An open-source project
Use it. Read it. Help shape it.
Toit is developed in the open. Contributions include programs and packages, documentation, bug reports, and changes to the language and runtime.