blueboat
SSVM
Our great sponsors
blueboat | SSVM | |
---|---|---|
18 | 50 | |
1,918 | 7,817 | |
- | 3.7% | |
0.0 | 9.8 | |
about 1 year ago | 3 days ago | |
Rust | C++ | |
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.
blueboat
-
What's with All the Runtimes for JavaScript?
Right now it is an exciting time for JavaScript. We just got a new shiny fast runtime Bun, with the last new kid Deno being released only 4 years ago, and we have edge computing/serverless runtimes like Cloudflare worker and Blueboat. With all these hypes for the JavaScript community, I could not help but ask, how come only JavaScript gets all these fancy new runtimes? Why don’t we hear these more often in other languages?
-
Show HN: Distributed SQLite on FoundationDB
Hello HN! I'm building mvsqlite, a distributed variant of SQLite with MVCC transactions, that runs on FoundationDB. It is a drop-in replacement that just needs an `LD_PRELOAD` for existing applications using SQLite.
I made this because [Blueboat](https://github.com/losfair/blueboat) needs a native SQL interface to persistent data. Apparently, just providing a transactional key-value store isn’t enough - it is more easy and efficient to build complex business logic on an SQL database, and it seems necessary to bring a self-hostable distributed SQL DB onto the platform. Since FoundationDB is Blueboat’s only stateful external dependency, I decided to build the SQL capabilities on top of it.
At its core, mvsqlite’s storage engine, mvstore, is a multi-version page store built on FoundationDB. It addresses the duration and size limits (5 secs, 10 MB) of FDB transactions, by handling multi-versioning itself. Pages are fully versioned, so they are always snapshot-readable in the future. An SQLite transaction fetches the read version during `BEGIN TRANSACTION`, and this version is used as the per-page range scan upper bound in future page read requests.
For writes, pages are first written to a content-addressed store keyed by the page's hash. At commit, hashes of each written page in the SQLite transaction is written to the page index in a single FDB transaction to preserve atomicity. With 8K pages and ~60B per key-value entry in the page index, each SQLite transaction can be as large as 1.3 GB (compared to FDB's native txn size limit of 10 MB).
mvsqlite is not yet "production-ready", since it hasn’t received enough testing, and I may still have a few changes to make to the on-disk format. But please ask here if you have any questions!
-
Show HN: Blueboat is an all-in-one, multi-tenant serverless JavaScript runtime
This sounds quite a bit like Cloudflare Workers, and they have a comparison page - https://github.com/losfair/blueboat/wiki/Comparison-with-Clo....
-
Are V8 isolates the future of computing?
Blueboat may be what you’re looking for
> If one writes Go or Rust, there are much better ways to run them than targeting WASM
wasm has its place, especially for contained workloads that can be wrapped in its strict capability boundaries (think, file-encoding jobs that shouldn't access anything else but said files: https://news.ycombinator.com/item?id=29112713).
> Containers are still the defacto standard.
wasmedge [0], atmo [1], krustlet [2], blueboat [3] and numerous other projects are turning up the heat [4]!
[0] https://github.com/WasmEdge/WasmEdge
[1] https://github.com/suborbital/atmo
[2] https://github.com/krustlet/krustlet
- Blueboat, an open-source alternative to Cloudflare Workers
-
Deno Deploy Beta 2
https://github.com/losfair/rusty-workers
They're not perfectly isolated to a high security standard such that you could deploy your own v8 workers SaaS. And they do have quirks and development woes. I haven't tested in production but if it's just your trusted apps wanting to exceed the cloudflare workers 30 scripts limit then both are wonderfully powerful solutions to put behind a https proxy.
SSVM
-
Time-series data ingestion from Rust WebAssembly application, leveraging GreptimeDB and WasmEdge
WasmEdge GitHub address: https://github.com/WasmEdge/WasmEdge.
-
Run LLMs on my own Mac fast and efficient Only 2 MBs
Mmm…
The wasm-nn that this relies on (https://github.com/WebAssembly/wasi-nn) is a proposal that relies of arbitrary plugin backends sending arbitrarily chunks to some vendor implementation. The api is literally like set input, compute, set output.
…and that is totally non portable.
The reason this works, is because it’s relying on the abstraction already implemented in llama.cpp that allows it to take a gguf model and map it to multiple hardware targets,which you can see has been lifted here: https://github.com/WasmEdge/WasmEdge/tree/master/plugins/was...
So..
> Developers can refer to this project to write their machine learning application in a high-level language using the bindings, compile it to WebAssembly, and run it with a WebAssembly runtime that supports the wasi-nn proposal, such as WasmEdge.
Is total rubbish; no, you can’t.
This isn’t portable.
It’s not sandboxed.
If you have a wasm binary you might be able to run it if the version of the runtime you’re using happens to implement the specific ggml backend you need, which it probably doesn’t… because there’s literally no requirement for it to do so.
There’s a lot of “so portable” talk in this article which really seems misplaced.
-
Requiem for a Stringref
WasmEdge isn't there yet: https://github.com/WasmEdge/WasmEdge/issues/1122#issuecommen...
- Should You Be Scared of Unix Signals?
-
ChatGPT-powered code review bot to boost your PR merge. Deploy in 5 mins
Example 1: Analyze the content and risks of each commit in the PR. Then make a summary. https://github.com/WasmEdge/WasmEdge/pull/2394#issuecomment-...
-
Cloud, Why So Difficult?
There has also been a few "cloud-native" runtimes based on WASM, like WasmEdge but there's a few others (can't remember their names!)...
-
Release: WasmEdge 0.12 and 0.12.1
https://github.com/WasmEdge/WasmEdge/releases/tag/0.12.1
Key features:
* New plugin system makes it easy for community to add features to WasmEdge
-
Flows.network: Add eyes, ears, memory& hands to LLMs with serverless functions
https://github.com/WasmEdge/WasmEdge/pull/2394#issuecomment-...
Reviewing source code files, analyzing risks and summarizing changes. It even suggests code improvements!
- [AskJS] Has anybody implemented and compiled ServiceWorker specification to a standalone executable?
What are some alternatives?
wasmer - 🚀 The leading Wasm Runtime supporting WASIX, WASI and Emscripten
wasmtime - A fast and secure runtime for WebAssembly
aws-lambda-wasm-runtime - A template project for building high-performance, portable, and safe serverless functions in AWS Lambda.
WAVM - WebAssembly Virtual Machine
dapr-wasm - A template project to demonstrate how to run WebAssembly functions as sidecar microservices in dapr
WasmEdge-go - The GO language SDK and API for WasmEdge
buildah - A tool that facilitates building OCI images.
yomo - 🦖 Stateful Serverless Framework for building Geo-distributed Edge AI Infra
WasmEdge-tensorflow
WasmEdge-image
bun - Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one
rustwasmc - Tool for building Rust functions for Node.js. Combine the performance of Rust, safety and portability of WebAssembly, and ease of use of JavaScript.