spin-js-sdk
spin-fileserver
spin-js-sdk | spin-fileserver | |
---|---|---|
3 | 1 | |
41 | 41 | |
- | - | |
7.5 | 6.6 | |
1 day ago | 22 days ago | |
Rust | Rust | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
spin-js-sdk
-
Spin 2.0 – open-source tool for building and running WASM apps
Thank you!
To your point, the primary consideration for choosing the languages is their support for WebAssembly, and WASI in particular.
Due to Spin's heavy use of WASI and the component model, languages that have first party support in the WIT bindings generator (https://github.com/bytecodealliance/wit-bindgen) are the easiest to implement, followed by languages that can be built on top of the support for those with first party support.
For example, the JavaScript support is built by embedding QuickJS (in particular, Shopify's Javy project — https://github.com/fermyon/spin-js-sdk), which then uses the Rust SDK.
-
Spin 1.0 — The Developer Tool for Serverless WebAssembly
Besides the built-in key/value store, Spin applications can also connect to external databases (such as relational databases, or Redis), or connect to the new class of serverless databases that expose their connections over HTTP. Let's see an example of using a PlanetScale database from TypeScript:
-
Fermyon Spin JavaScript and TypeScript SDK
There's a simple example of using React server-side rendering here: https://github.com/fermyon/spin-js-sdk/tree/main/examples/ja.... We haven't tried anything more advanced than that, yet, but a full-blown isomorphic app should work fine in theory.
The main limitation at the moment is that we only support a handful of Web APIs (e.g. `fetch`, `URL`, etc.) and NodeJS APIs (e.g. `readFile`), as well as QuickJS's built-in ES2020 APIs, so if you try to run an existing app you may find it needs a Web API we don't yet support. If so, please feel free to open an issue on the `spin-js-sdk` repo.
spin-fileserver
-
Spin 1.0 — The Developer Tool for Serverless WebAssembly
The handler functions can perform operations such as fetching data from external APIs, serving files, connecting to databases (such as relational databases, or Redis), or persisting state using Spin's built-in key/value storage.
What are some alternatives?
componentize-py
spin-trigger-sqs - A trigger plugin for processing SQS messages using Spin
teavm-wasi - Friendly fork of TeaVM with support for WASI and the WebAssembly Component Model
preview2-prototyping - Polyfill adapter for preview1-using wasm modules to call preview2 functions.
zig-spin - 🦎 🪀 Zig SDK for the Spin serverless application framework created by @fermyon.
containerd-wasm-shims - containerd shims for running WebAssembly workloads in Kubernetes
spin-plugin-k8s - A Kubernetes Plugin for Fermyon Spin
spin-planetscale-f1
wasi-keyvalue