Skip to main content

Glossary

TermDefinitionOther form(s)
WebAssemblyA binary instruction format, designed as a portable compilation target for programming languages, enabling deployment on the web for client and server applications.Wasm
WASIThe WebAssembly System Interface, an API designed by the Wasmtime project that provides Wasm modules with access to several operating-system-like features, including files and filesystems, Berkeley sockets, clocks, and random numbers
RunnableA Runnable can be written in any of the supported languages (such as TypeScript, Rust or Swift), and is compiled to WebAssembly when you build it.
The DirectiveA declarative file that allows you to describe your application's business logic. By describing your application declaratively, you can avoid all of the boilerplate code that normally comes with building a web service such as binding to ports, setting up TLS, constructing a router, etc.
HandlerEach handler tells Atmo how to handle a resource. A resource is an input that Atmo makes available via HTTP endpoints, event handlers, and more. To start, Atmo supports handlers for HTTP requests, particulary designed to help building web APIs. Handlers are declared in the directive.
BundleA Bundle is a .wasm.zip file that includes your Directive, along with all of your Runnables compiled to WebAssembly modules. Bundles are built using subo.
Building BlocksThe projects that are used to build Atmo (Reactr, Vektor, Grav)RVG
FFIThe concept of two different programming languages calling functions that one another have exposed; this is how Runnable WebAssembly modules communicate with Reactr/AtmoForeign Function Interface