← Selected work

Implementation and maintenance across the ecosystem

zig-nostr

A native ecosystem for Nostr, built in Zig.

ZigNative apps / ProtocolsOpen source

Native library and applications

One ecosystem, shared foundations

zig-nostr brings the Nostr protocol into native software. The ecosystem connects a reusable Zig library with Notary, Plaza, and deed, so applications share protocol, networking, storage, and signing foundations. My contributions span implementation, integration, fixes, and releases across these repositories.

nostr · Protocol library

The shared library handles signed events, WebSocket relay transport, LMDB local event storage, and remote signing. It provides the reusable foundation for the desktop applications and CLI. The library is in early releases, with APIs still evolving.

Notary · Signing application

Notary keeps keys in a dedicated signer and exposes signing requests through a native approval interface. Its signing daemon and interface run as separate processes, and clients connect through the NIP-46 remote-signing protocol.

Plaza · Desktop client

Plaza reads feeds from a local event store while background work keeps relay data up to date. It combines profiles, conversations, search, media uploads, and article reading in a native interface, with signing provided by Notary or an external signer.

deed · Command-line tool

deed brings the same foundations to the terminal: creating and signing events, verifying signatures, querying relays, publishing, and working with a local store. Commands that do not need a relay can run offline.

Explore the work