awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
astrid-runtime avatar

astrid-runtime/sdk-js

0
View on GitHub↗

Sdk Js

This is the TypeScript SDK for writing capsules that run on the Astrid runtime. It offers a typed JavaScript and TypeScript API for authoring sandboxed extensions, with modules for files, networking, processes, storage, messaging, web requests, and identity. These modules target the same host contract as the native Rust toolkit, so the runtime handles capsules from either toolkit the same way.

Capsule behavior is declared with decorators on classes and methods. They mark tools, commands, hooks, interceptors, and the entry points that run on install, upgrade, and startup. A build pipeline type-checks the source, bundles it into a single module, and converts it into a portable WebAssembly component. That component is then packed with its manifest and interface definitions into a compressed archive. Message, tool-call, and stream-event types are generated from one shared contract file, so both sides of an exchange use identical definitions.

The host-facing surface covers outbound HTTP requests, TCP and UDP sockets, DNS lookups, and request-reply messaging with unique ids and timeouts. It also covers persistent background processes that can be reconnected by saved id, streamed file access through handles, and versioned key-value storage with migrations, compare-and-swap updates, and paginated key listing. Smaller utilities include timers and a monotonic clock, optional environment variable lookup, secure random bytes, and publishing messages as a principal.

The repository is a multi-package TypeScript codebase. Every package extends one shared compiler configuration with strict type checking, declaration output, and source maps.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI
github.com/astrid-runtime/astrid
↗

Features

  • Capsule Authoring SDKs - Provides a typed JavaScript and TypeScript toolkit for authoring capsules with filesystem, networking, messaging, storage and identity modules exposed through decorators.
  • TypeScript Runtime Extension SDKs - Provides a typed JavaScript and TypeScript API for writing capsules that target the same host contract as the native Rust toolkit.
  • Sandboxed Capsule Authoring APIs - Offers a typed API organized by module for files, networking, messaging, storage, web requests, hooks, and identity, with decorators for tools and lifecycle handlers.
  • WebAssembly Capsule Development - Lets authors write capsule logic in TypeScript with decorators and compile it into WebAssembly components that run alongside natively built capsules.
  • Host Service Bindings - Exposes filesystem, networking, process, storage, identity, and messaging modules that map onto one host contract shared with the native toolkit.
  • Sandboxed Plugin Runtimes - Supports writing sandboxed extensions that run inside a host runtime and reach host resources only through a typed, controlled service surface.
  • Plugin Compilation to WebAssembly - Type-checks source, bundles it into a single module, and converts it into a portable WebAssembly component through an automated pipeline.
  • WebAssembly Build Systems - Runs a pipeline that type-checks TypeScript, bundles it into one module and converts it into a WebAssembly component ready to load.
  • Key-Value Stores - Provides shared key-value storage with schema-versioned migrations, atomic compare-and-swap updates, and paginated key listing.
  • Component Archive Packaging - Packs the compiled component with its manifest and interface definitions into a single compressed archive automatically.
  • Background Process Offloading - Launches persistent background processes that outlive the caller and can be reconnected by saved id to read logs, send input, signal, or stop.
  • JSON Message Exchanges - Generates message, tool-call, and stream-event types from one shared contract so both ends of an exchange use identical shapes.
  • Outbound HTTP Requests - Sends outbound HTTP requests that return standard response objects, with request controls, response metadata, and a fluent builder.
  • TCP and UDP Socket Interfaces - Offers outbound HTTP requests, TCP and UDP sockets, and DNS lookups so capsules can talk to remote services.
  • Decorator-Based Declarations - Uses decorators on classes and methods to declare tools, commands, hooks, interceptors, and install, upgrade, and startup entry points.
  • WebAssembly Component Models - Runs a type checker, a bundler, and a component tool in sequence to turn source code into a loadable WebAssembly component.
  • Request-Reply Patterns - Implements request-reply messaging over asynchronous channels, using unique ids and timeouts to match each reply to its request.
  • Host Service Bindings - Provides typed modules for files, networking, processes, storage, and messaging that map onto one shared host interface also implemented by a native toolkit.
  • Sandboxed Plugin Runtime Clients - Ships a client-side library that sandboxed capsules use to call host services through a contract shared with the native Rust toolkit.
  • Typed Message Processing - Exchanges messages, tool calls, and stream events using generated shared types plus request-reply messaging with unique ids and timeouts.
  • Class Decorators - Uses class and method decorators to declare tools, commands, hooks, interceptors, and install, upgrade, and startup entry points.
  • Shared Message Contracts - Generates message, tool-call and stream-event types from one shared contract file so both sides of an exchange use identical definitions.
8,088 stars·37 forks·TypeScript·Apache-2.0·2 views

Star history

Star history chart for astrid-runtime/sdk-jsStar history chart for astrid-runtime/sdk-js

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Frequently asked questions

What does astrid-runtime/sdk-js do?

This is the TypeScript SDK for writing capsules that run on the Astrid runtime. It offers a typed JavaScript and TypeScript API for authoring sandboxed extensions, with modules for files, networking, processes, storage, messaging, web requests, and identity. These modules target the same host contract as the native Rust toolkit, so the runtime handles capsules from either toolkit the same way.

What are the main features of astrid-runtime/sdk-js?

The main features of astrid-runtime/sdk-js are: Capsule Authoring SDKs, TypeScript Runtime Extension SDKs, Sandboxed Capsule Authoring APIs, WebAssembly Capsule Development, Host Service Bindings, Sandboxed Plugin Runtimes, Plugin Compilation to WebAssembly, WebAssembly Build Systems.

Which projects share features with astrid-runtime/sdk-js?

Projects with overlapping indexed features include: spinframework/spin — Spin is a developer framework for building, running, and distributing serverless applications and microservices… nats-io/nats.go — This is a Golang client library for interacting with a cloud native distributed messaging system. It provides the… unicity-aos/aos-ce — AOS Community Edition is a runtime platform for AI agents such as Claude, Codex and Grok. It connects them to local… fermyon/spin — Spin is a WebAssembly serverless framework and development toolchain for building and running portable microservices.… yjhjstz/deep-into-node — This project is a technical study and analysis guide focused on the internal architecture of Node.js. It provides an… tporadowski/redis — Redis is a high-performance in-memory key-value store that functions as a distributed cache, message broker, and NoSQL…

Projects sharing features with Sdk Js

These projects share indexed features with Sdk Js. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • spinframework/spinspinframework avatar

    spinframework/spin

    6,564View on GitHub↗

    Spin is a developer framework for building, running, and distributing serverless applications and microservices compiled to sandboxed WebAssembly components. Components start only when an event arrives, such as an HTTP request or a Redis message, and are discarded afterwards. A single command-line tool covers the workflow: scaffolding from templates, building, running locally, publishing to a registry, and adding commands through plugins. Each application is described by one declarative manifest that lists its components, triggers, variables, and permissions. Components run in an isolated san

    Rustserverlessspinwebassembly
    View on GitHub↗6,564
  • nats-io/nats.gonats-io avatar

    nats-io/nats.go

    6,801View on GitHub↗

    This is a Golang client library for interacting with a cloud native distributed messaging system. It provides the necessary tools for Go applications to exchange messages using publish-subscribe and request-reply patterns, as well as specialized clients for managing persistent streams and distributed storage. The library includes a JetStream client for durable message streaming and replay, a Key-Value store client for managing distributed state with versioning and watchers, and an Object Store client for the storage and retrieval of large binary files via chunked delivery. The implementation

    Gocloud-nativecloud-native-architecturescloud-native-microservices
    View on GitHub↗6,801
  • unicity-aos/aos-ceunicity-aos avatar

    unicity-aos/aos-ce

    8,458View on GitHub↗

    AOS Community Edition is a runtime platform for AI agents such as Claude, Codex and Grok. It connects them to local tools and services through plugins and a standard tool-protocol interface. A broker and per-agent host bridges make sure each agent sees only the local tools it is permitted to use. Each capability runs as a capsule, an isolated WebAssembly module that holds only the permissions it was explicitly granted. Capsules talk to each other through typed contracts over a shared event bus, so larger tools, connectors, services and agent harnesses are built by combining smaller pieces. An

    Rust
    View on GitHub↗8,458
  • fermyon/spinfermyon avatar

    fermyon/spin

    6,443View on GitHub↗

    Spin is a WebAssembly serverless framework and development toolchain for building and running portable microservices. It functions as an event-driven orchestrator and runtime that executes WebAssembly components, allowing developers to map HTTP requests, Redis messages, and cron schedules to specific modules. The project distinguishes itself by implementing a Wasm-based AI inference gateway, enabling components to perform model inference and generate text embeddings. It utilizes the WebAssembly Component Model and WASI for language-agnostic composition and portable host interfacing, while emp

    Rust
    View on GitHub↗6,443
Compare all 30 related projects→