Developers
ElastOS is open source under the MIT licence. The Runtime is written in Rust. Apps are packaged as signed capsules and must ask the Runtime before they act. How Apps and capsules work
This page is a starting point. The full developer documentation lives with the code in the Runtime repository. For the bigger picture, see Build on ElastOS.
Build from source
You need Rust 1.91 or newer, Git and just.
cargo install just
just build
just testRun just verify before you hand off a change. It runs the full repository checks, including lint and workspace tests.
A source build is not a complete install. To use ElastOS, install it with the install command.
Start a capsule
./elastos/target/release/elastos init my-capsuleThis creates a small WebAssembly Component. Components run in Wasmtime with memory and fuel limits, and talk to the Runtime only through ElastOS Bus. They get no host files, environment variables or raw network access.
The repository also has templates:
| Template | Use it for |
|---|---|
component-app | A WebAssembly Component App |
web-app | A web App that runs in a sandboxed frame |
viewer-content | A viewer and the content it opens |
provider-contract | A provider contract |
The first-party Apps in 2.0.0 are web Apps. The Component path is tested, but no shipped first-party App uses it yet. A source package is not a signed capsule: signing and distribution are separate steps.
Read next
Report bugs in GitHub issues. Report security problems privately: see Security and privacy.