Modular, lightweight, cross-platform apps with Go and TypeScript.
Aperture Robotics is an open source focused organization building
a next-generation development stack for apps w/ Go, Wasm, TypeScript.
ποΈ Projects
Get started building an application with the stack with the project template!
π§± App Stack
- ControllerBus - Dynamically configurable communicating control loops
- Bifrost - Cross-platform networking engine with pluggable transports
- goscript - Transpile Go to TypeScript
- ocpipe - Build LLM pipelines with OpenCode and Zod
π SkiffOS logo
SkiffOS
SkiffOS is a minimal Linux distribution designed to run containers on embedded devices. It uses Buildroot to cross-compile a tiny system image with support for Docker and other container runtimes. SkiffOS enables running any Linux distribution or application in lightweight containers on embedded hardware.
πͺΆ Lightweight Protobuf
These are lightweight reflection-free code-generation based implementations of Protobuf designed to optimize binary size and performance, especially for WebAssembly (wasm) applications.
- StaRPC - Protobuf 3 RPC services over any stream multiplexer
- protobuf-es-lite - Lightweight TypeScript protobuf implementation
- protobuf-go-lite - Lightweight Go protobuf implementation
- protobuf-project - Template repository for projects using protobufs
Protobuf libraries like protobuf-es and protobuf-go focus on spec compliance and feature-complete implementations. These lite libraries focus on just the base proto2 and proto3 spec including RPCs to simplify the implementation.
π QuickJS WASI Reactor
Run QuickJS-NG JavaScript engine in Go and TypeScript using the WASI reactor model for re-entrant execution:
- quickjs - QuickJS-NG fork with WASI reactor build target
- go-quickjs-wasi - Go module with embedded QuickJS-NG WASI command binary
- go-quickjs-wasi-reactor - Go module with embedded QuickJS-NG WASI reactor binary
- js-quickjs-wasi-reactor - Run QuickJS-NG within JavaScript with WASI reactor model
π Libraries
Common Go/TypeScript libraries:
- Common - Common project configuration files and Protobuf toolchain.
- Util - Go utilities for easy concurrent programming.
- go-kvfile - File format for storing a compressed key/value store
Lightweight / modified forks of other libraries:
- Cayley - Go Graph database forked from cayleygraph
- FlexLayout - Interactive drag/drop layout manager for React
- fastjson - Reflection-free json parser and validator
- go-brotli-decoder - Pure Go Brotli decompressor
- go-indexeddb - Low-level Go driver for IndexedDB in Wasm
- goprotowrap - Package-at-a-time wrapper for protoc
- json-iterator-lite - Minimal and fast reflection-free json marshal and unmarshal for Go
π Support
Please open a GitHub issue or email us with any questions.
Or feel free to reach out on Matrix Chat or Discord.
π License
Most projects are licensed MIT/Apache-2.0.
See the LICENSE file in each repository.
