Skip to main content

Overzicht

revolution/laravel-nostr is een pakket om het Nostr-protocol vanuit Laravel te gebruiken. Het biedt het genereren en converteren van keys, het ophalen en publiceren van events, pool-ondersteuning (meerdere relays), NIP-05-profielen, NIP-17 Private Direct Messages en integratie met Laravel Notifications.
Omdat de Nostr-specificatie nog volop in ontwikkeling is, wordt ook dit pakket continu doorontwikkeld. De notificatiefunctionaliteit is al goed bruikbaar in de praktijk.

Drivers

Dit pakket heeft twee drivers.
Het unieke aan de native-driver is de implementatie van WebSocketHttpMixin. Deze maakt via de HTTP-client van Laravel verbinding met een WebSocket en verbreekt de verbinding direct na het versturen en ontvangen van data. Je hoeft geen WebSocket-server draaiende te houden; het ontwerp is zo dat elke Laravel-gebruiker het kan gebruiken.
De native-driver ondersteunt NIP-04 niet.

Standaarddriver instellen

Stel dit in via config/nostr.php of .env.
Als je geen driver opgeeft, wordt de standaarddriver gebruikt.
Je kunt de driver ook expliciet opgeven.

Installatie

1

Pakket installeren

2

Configuratiebestand publiceren

Keybeheer

Keys genereren

Keys converteren

Converteren vanuit een nsec.
Converteren vanuit een secret key.
Converteren vanuit een npub (alleen publieke sleutel).
Converteren vanuit een public key.

Events ophalen

Meerdere events ophalen

Eén event ophalen

Events publiceren

Publiceren naar één relay

Publiceren naar meerdere relays (pool)

Relayservers configureren

Welke relayservers worden gebruikt

Als je alleen Nostr::event() gebruikt, wordt de eerste relay uit config/nostr.php gebruikt. Bij Nostr::pool() worden alle relays uit de configuratie gebruikt.

Relays wijzigen tijdens runtime

NIP-05-profielen

NIP-17 Private Direct Messages

NIP-17 wordt alleen ondersteund door de native-driver.

Een privébericht versturen

Een privébericht ontsleutelen

Laravel Notifications

Met NostrChannel kun je vanuit Laravel Notifications berichten versturen naar Nostr.

De Notification-klasse

On-demand notificaties

Integratie met het User-model

Relayservers voor notificaties

Standaard worden alle relays uit config/nostr.php gebruikt. Door relays op te geven via NostrRoute kun je dit tijdens runtime wijzigen.
Zie de GitHub-repository voor de meest recente informatie.
Laatst gewijzigd op 6 september 2026