Capsule Module SDK
What's new?
v0.0.6
: π Redis fixv0.0.5
: β¨ Add 2 new helpers:GetHeaders
(transform a JSON string to a map[string]string) andSetHeaders
(transform a map[string]string to a JSON string)v0.0.4
: β¨ Add theSuccess
andFailure
functions (public functions to callsuccess
andfailure
) and theStringifyHTTPResponse
functionv0.0.3
: β¨ EncoderetValue.TextBody
to avoid special characters in jsonStringv0.0.2
: β¨ Redis supportv0.0.1
: π first release
What is the Capsule Module SDK alias Capsule MDK?
Capsule MDK is a WASM SDK to develop WASM modules for the Capsule applications.
The Capsule WASM modules are developed in GoLang and compiled with TinyGo π (with the WASI specification)
Capsule applications?
A Capsule application is a WebAssembly Module(or Function) Runner. Right now, it exists two kind of Capsule application:
- capsule-cli, CLI. With capsule-cli, you can simply execute a WebAssembly Capsule module in a terminal
- capsule-http, an HTTP server that serves WebAssembly Capsule modules
Good to know
- π you can develop your own Capsule application with Capsule Host SDK (alias Capsule HDK).
- π€ a capsule application is "small" (capsule-http weighs 12M)
- π³ a Capsule application is statically compiled: you can easily run it in a Distroless Docker container.
- π The Capsule applications are developed with GoLang and thanks to the Wazero project
What does a WASM Capsule function look like?
What are the added values of a Capsule application?
A Capsule application brings superpowers to the WASM Capsule modules with host functions. Thanks to these host functions, a WASM Capsule module can, for example, prints a message, reads files, writes to files, makes HTTP requests, ... See the host functions section.
Useful information for this project
- π Issues: https://github.com/bots-garden/capsule-module-sdk/issues
- π§ Milestones: https://github.com/bots-garden/capsule-module-sdk/milestones
- π¦ Releases: https://github.com/bots-garden/capsule-module-sdk/releases