Code
The code I write is infrastructure for people who want to own what they build. Libraries and tools that run without permission, that don't phone home, that work the same whether you have ten users or ten thousand. No terms of service. Just protocols and the math that holds them together. The libraries come first. Something bigger is being built on top of them.
innis/nostr-core
A PHP library for the Nostr protocol. Clean architecture, immutable domain objects, pure functions.
composer require innis/nostr-core
github.com/johninnis/nostr-core
innis/nostr-client
An async PHP client for the Nostr protocol. Talks to relays, manages subscriptions, handles the back-and-forth of messages.
composer require innis/nostr-client
github.com/johninnis/nostr-client
innis/nostr-relay
An async PHP relay for the Nostr protocol. Built on innis/nostr-core, same architecture, same discipline.
composer require innis/nostr-relay
github.com/johninnis/nostr-relay
innis/nostr-demo
Four scripts that wire nostr-core, nostr-client, and nostr-relay together. Generate keys, start a local relay, publish events, read them back. Everything signed and validated end to end.