astrid-runtime/sdk-js

JavaScript and TypeScript SDK for building Astrid capsules.

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 15 minutes ago
Added to GitGenius on September 1st, 2026
Created on May 18th, 2026
Open Issues & Pull Requests: 12 (+0)
GitHub issues: Enabled
Number of forks: 37
Total Stargazers: 8,113 (+0)
Total Subscribers: 8 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 0.1 hours
Mean response time: 3.9 days
90th percentile: 7.8 days
Tracked items: 2

Most active contributors

Sign in to see contributor activity.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 7
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 61 days
Stale 30+ days: 7
Stale 90+ days: 0

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

The Astrid SDK for JavaScript is a TypeScript SDK for building Astrid capsules that compile to WebAssembly components.

The tool solves the problem of enabling JavaScript and TypeScript developers to build capsules—modular, deployable units in the Astrid runtime—using familiar Node.js idioms rather than requiring Rust expertise. It translates the same WebAssembly Interface Type contract and Component Model output as the Rust SDK, meaning capsules built with either language are indistinguishable to the kernel. The SDK provides a module-by-module API mirror covering filesystem operations, networking, process management, environment variables, time, logging, and Astrid-specific capabilities like inter-process communication, key-value storage, HTTP handling, and identity management. TypeScript decorators replace Rust attributes for defining capsule entry points. The build pipeline chains TypeScript compilation, esbuild bundling, and ComponentizeJS to produce a wasip2 component, which the Rust-side build tool packages into a `.capsule` archive.

Developers should choose this SDK if they prefer JavaScript or TypeScript ergonomics over Rust and are building daemon-mode workloads where binary size is acceptable. The tool trades off size—JavaScript capsules are approximately eleven megabytes raw, compared to around two hundred kilobytes for Rust equivalents—for developer familiarity with async/await, WHATWG fetch, and Node.js standard library patterns. The identical host ABI means a capsule can be ported between languages without kernel changes, so the choice is not permanent.

The project is in alpha status with the end-to-end vertical slice proven: TypeScript source through wasip2 component generation to capsule installation and kernel lifecycle hook execution. Daemon-mode tool dispatch is ready for human-operator smoke testing on the same code path as installation. Development history, design decisions, and known follow-ups are documented in phase notes within the repository.