T
The Nostr Protocol Forum
Discussions

Squalk: an old-school forum engine built on Nostr

showcase
Sep 21, 2026

I miss classic forums: slow, asynchronous threads that stay readable and searchable for years, instead of knowledge dissolving into chat scrollback. Squalk is my attempt to rebuild that on top of Nostr, an open protocol where users hold a keypair, posts are signed events, and interchangeable relays store and serve them, instead of a private database.

And yes, there is a chat in the sidebar too. I'm not purists: quick back and forth has its place, it just lives next to the threads instead of replacing them. Hash things out in the chat, then write down what matters where it will still be findable next month.

The design in short: a forum is a view over relay-hosted data. Rooms are groups as specified in NIP-29, threads are NIP-7D events, identity is the user's own keypair. The consequence I care about is that the software and the community are decoupled: any other client speaking the same specs (Flotilla, Nostrord) can read and write the same conversations, and if my deployment disappears the history and identities survive on the relay.

Technical bits that might interest this crowd: one SvelteKit codebase builds either as a static SPA or as a server-rendered Node app; the SSR mode renders only the anonymous view (no keys server-side) so threads are crawlable, with a stale-while-revalidate snapshot cache in front of the relay queries. Content is rendered as djot rather than markdown.

Pilot community: https://nostr-proto.org
Test instance where you are welcome to make a mess: https://squalk-test.dtonon.com
Source code: https://github.com/dtonon/squalk

Feedback on the architecture is welcome!

Sep 30, 2026

🙌 super cool, reactions would be welcome

Oct 2, 2026

Thanks @nprofile1qy2hwu…3qdn!
I deliberately kept reactions out to promote discussions, but that doesn't rule out the possibility of introducing them in the future.

Oct 3, 2026

makes sense, I respect that choice

Oct 20, 2026

Squalk looks very interesting. A few questions:
- Is it being actively developed?
- Can users upload images and files?
- Can forums have sub-forums and sub-sub-forums etc...?
- Can a Squalk site be set to invite only?

Thanks!

Oct 22, 2026

Hi @YurkshireLad , Squalk is actively developed, currently I'm working on some needed NIP-29 specs, and on the admin area.
Users can upload file, they are hosted in a configurable Blossom server (e.g. relay.nostr-proto.org for this group, that is both a Nostr relay and a Blossom server).
A relay can have multiple forums, there are not sub-forums.
You can create private groups (rooms), so it becomes actually invite-only; the admin UI will make all this configurations more clear and easy to achieve.

Oct 22, 2026

It’s very cool, I must say.

Oct 22, 2026

Thank you @YurkshireLad ! :)

Oct 29, 2026

How do I identify which users are trusted as admins?

Oct 29, 2026

Ah, admins are defined via the relay, not via Squalk?

Nov 2, 2026

What's the better option of the two for serving Squalk as a website? This isn't an area I know anything about.

a static SPA or as a server-rendered Node app

To participate and reply, please

Hosting relay is relay.nostr-proto.org
This forum is built on Nostr with Squalk v0.2.2