Opensats Vertex Report: Oct to Jan

This is what I have achieved on a per-project basis in Q4 of 2025.

Opensats Report: Oct to Jan

This is what I have achieved on a per-project basis in Q4 of 2025.


nostr-sqlite

nostr-sqlite is a Go library that provieds a high-performance, highly customizable sqlite store for Nostr events. It is an evolution of Nastro, which has been discontinued in favor of this more sqlite-centric database.

Notable differences include:

  • Simplified retry logic that now uses the built-in sqlite feature busy_timeout

  • Automatic periodic PRAGMA optimize calls that make sqlite update the heuristics used by the query planner, significantly increasing read performance

  • The Store.Replace method is now fully atomic, so replaceable or addressable events are handled correctly without data races

  • The database schema has been optimized by using sorted indexes (instead of normal indexes)

  • Other minor improvements that can be found here

Overall this is a much more performant and capable database, which is being used by the Vertex Crawler and Vertex Relay, by Reis and soon by the new Zapstore server.

rely

After a long refactor focused on increasing the performance of handling subscriptions, rely finally reached the v1 milestone. An independent test made my @mleku showed that in fact rely + nostr-sqlite is one of the fastest relay implementations, even faster than strfry.

Other notable contributions include:

  • Updated NIP-42 to support multi-user auth, while making auth verification tighter

  • Improved API ergonomics, documentation and examples

  • Introduced a new IP structure for making it easier to do IP-rate limiting with IPv6

  • Added more options around HTTP settings used by the Relay.StartAndServe

  • Other minor improvements can be found here

rate

rate is a low-level, highly-concurrent, in-memory, generic token bucket rate limiter for Go. This library is or will be used in the Vertex Relay and the new Zapstore server for performing IP-based or pubkey-based rate limiting.

Blossom

I’m currently working closely with @hzrd to address critical security vulnerabilities in the blossom authorization spec. As explained in this PR, the blossom authorization is currently vulnerable to a replay attack, which is particulary dangerous for delete operations.

This led to the development of a new authorization scheme using Nostr events called Nostr Web Tokens.

Nostr Web Tokens

A Nostr Web Token (NWT) is a signed Nostr event used to convey signed claims between parties on the web.

NWTs are an equivalent nostrified version of JSON Web Tokens, which are used in traditional applications for authorization and authentication purposes.

Because the validity of an NWT can be scoped to an audience, it’s possible to prevent replay attacks like the one that affected Blossom.

A reference Go library for NWT has been developed, and a PR has been opened to the NIPs repository and has received positive feedback so far.

At this link you can learn more about NWT vs Blossom Auth vs NIP-98.

blossy

blossy is a framework for building super custom Blossom servers, designed for the best developer experience. Similar to rely, blossy’s philosophy is to allow developers to build in code any custom business logic on top of a stable foundation that focused on protocol compliance.

Blossy now supports all Blossom endpoints, such as GET /<sha256>.<ext>, PUT /upload, allowing users of the framework to specify exactly what should be accepted and rejected, and how requests should be fulfilled.

I envision blossy becoming a stable foundation for exciting projects, such as a paid Cashu Blossom server, a WoT gated server, or custom blob indexers.

blisk

blisk (short for blobs on disk), is an efficient, scalable, and deduplicated local blob storage that maintains metadata in sqlite.

Thanks to its sharded directory structure, blisk maintains predictable high performance in highly concurrent scenarios, all while exposing a simple and high-level API.

Bliss is fully compatible with Blossom, providing developers with an easy-to-use and efficient database option for building their own Blossom servers.

Zapstore server

After coordinating with Fran, I began building a new relay and Blossom server to power the next version of Zapstore.

The repository is still a work in progress and will be open-sourced as soon as it’s ready to run.

Looking at the future

I will be partecipating to the NosFabrica Wotathon with Campfire, a new full-featured Nostr relay and Blossom server designed for personal or community use. It will offer precise access control, powered by a configurable WoT provider and a “spider” mode, automatically fetching all events relevant to the owner npub.

This project will also help in refining the rely and blossy frameworks, as well as the blisk and nostr-sqlite databases.


Thanks for all of these contributions. I really like the format of this report.