Об этом проекте
astrid-sdk — это Rust SDK для создания капсул в среде выполнения Astrid. Он предоставляет авторам капсул безопасный типизированный доступ к сервисам ядра, включая файловую систему, IPC, сеть, хранилище, одобрение, планирование и многое другое.
Рабочее пространство состоит из трех крейтов:
- astrid-sdk: основной SDK, предоставляющий модули, такие как fs, net, process, env, time, log, а также специфичные для Astrid модули (ipc, kv, http, hooks, cron, uplink, identity, approval, runtime). Структура модулей повторяет стандартную библиотеку для удобства.
- astrid-sdk-macros: proc macro, который генерирует экспорты WASM ABI из аннотированных блоков impl, обрабатывая диспетчеризацию инструментов, маршрутизацию команд, обработчики хуков, обработчики cron и точки входа установки/обновления.
- astrid-sys: низкоуровневые привязки FFI от WASM к хосту (таблица системных вызовов). Не предназначен для прямого использования.
Капсулы компилируются в цель wasm32-wasip2. Макрос #[capsule] автоматизирует весь шаблонный код WASM ABI, включая экспорты extern "C", сериализацию JSON через границу, генерацию схемы инструментов и маршрутизацию диспетчеризации.
Зависимости минимальны: требуются только astrid-sdk и serde. SDK распространяется под двойной лицензией MIT или Apache-2.0.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.