Skip to content

Solution: LP-0026 - Logos Forum - #168

Open
edenbd1 wants to merge 6 commits into
logos-co:masterfrom
edenbd1:solution-lp-0026
Open

edenbd1 wants to merge 6 commits into
logos-co:masterfrom
edenbd1:solution-lp-0026

Conversation

@edenbd1

@edenbd1 edenbd1 commented Sep 30, 2026 •

Copy link
Copy Markdown
Contributor

This adds my solution for LP-0026: Logos Forum, a forum that runs inside Logos Basecamp with no server anywhere.

Topics and replies go over Logos Messaging (Logos Delivery), history is kept on each device and shared through Logos Storage, and every post is signed and checked by the app itself when it arrives. You can post from one of your accounts, under an alias, or anonymously with a key made for that one post and then thrown away, and you can rotate an account's key at any time.

Demo (3:43, narrated, subtitled)

▶ YouTube: https://youtu.be/xNY5EzhCtuI

logos-forum-demo.mp4

How to install it (Basecamp 0.3.0, macOS Apple silicon or Linux x86_64)

  1. Open Basecamp and go to Settings → Package Repositories.
  2. Under Add a repository, paste this URL and click Add:
    https://raw.githubusercontent.com/edenbd1/logos-forum-catalog/main/logos-repo.json
    
  3. Open the Package Manager (the box icon in the sidebar), pick the Social category, and click Install next to Logos Forum.
  4. Confirm. Basecamp also installs delivery_module and storage_module from the official Logos catalog; nothing else is needed.
  5. Click Logos Forum in the sidebar. An account is created for you, so you can post straight away, and the existing topics arrive from peers who are online.

Updates show up in the Package Manager like any other module. Building from source is described in the README, which also has a walkthrough with screenshots.

What I tested, on the real logos.test network

Five Basecamp nodes driven through the interface, 24 checks: accounts, alias, anonymous, a second account, rotation, a post written offline that goes out when the network is back, and a newcomer recovering the whole history from peers. 47 core tests, CI green on Linux and macOS. Everything is in the solution file with links.

Security review. vpavlin from the Logos team reviewed the whole codebase (edenbd1/lp-0026-forum#1). Every point is fixed in 0.2.0, now in the catalog, almost all with a test (two are checked by hand). The main change is that history now travels over Delivery relays by default, so nothing a stranger sends can make the forum connect to an address of their choosing. The details and the remaining limits are in docs/security.md.

Testnet v0.3. The logos.test Delivery fleet went down with the v0.3 launch, so the forum (0.3.2 in the catalog) runs on logos.dev, the fleet that is up, with delivery_module 0.3.0 and storage_module 3.0.0, and installs next to Chat 0.3.0. It passes the same five-node run there (24/24), and a fresh install from the catalog gets the history in seconds. The network is a setting, so following the official fleet is a one-line change. Since 0.3.2, opt-in Logos Storage snapshots are fetched over Mix, so even that path never connects to the provider.

Making it an official Basecamp app

If this is merged, I'd love Logos Forum to become an official application, available directly in every Basecamp through the official catalog (logos-modules-release), with no repository to add by hand. It is already built the way that catalog expects: logos-module-builder, one portable .lgx for macOS and Linux, dependencies pinned to the catalog's own delivery_module and storage_module, reproducible builds. Tell me the form you prefer and I'll open the pull request there and keep it maintained.

One criterion is still in progress: real conversations. The forum is live and I'm inviting builders to use it now.

Repo: https://github.com/edenbd1/lp-0026-forum

@github-actions

github-actions Bot commented Sep 30, 2026 •

Copy link
Copy Markdown

✅ Validation passed

A reviewer will assess against the prize criteria.
ℹ️ Solution submission for LP-0026.
ℹ️ Checking repo: https://github.com/edenbd1/lp-0026-forum


Automated check. See solution template and TERMS.

@jzaki

jzaki commented Oct 1, 2026

Copy link
Copy Markdown
Collaborator

Thanks for your quick proposal!

  1. How is storage used in the app?
  2. If Alice and Bob are offline, and Charlie comes online, can he get any history?

@edenbd1

edenbd1 commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor Author

Thanks for the questions!

1. How Storage is used. It carries history snapshots. A node can save the whole forum as one file on Logos Storage and announce its CID, and a newcomer downloads it and merges it post by post, checking every signature, so a snapshot can't add or change anything. It's opt-in ("fetchSnapshots": true in the forum's settings). I tested it this morning on the v0.3 stack with a post that only one node holds, so no store node can serve it, and the fresh node gets it through Logos Storage: script, run. The forum is also ready to download snapshots over Mix, so the provider never learns who fetched it, but on the testnet the Storage Mix proxies don't answer lookups yet (I reproduced it with libstorage alone, outside the forum). Until they do, it falls back to Delivery and the history still arrives. On testnet v0.3 snapshots are rarely needed anyway, because of the answer below.

2. Alice and Bob offline, Charlie comes online. Yes, he gets the full history. I tested exactly that this morning on testnet v0.3: Alice and Bob post in a forum created just for the test, then both go offline. Charlie is a completely fresh install that comes online with nobody else in the forum, and he gets every post in about 8 seconds. They come from the Logos Delivery store nodes, which keep history since v0.3, and Alice's log shows she answered no request. Each post is still checked against its signature before it's shown. Script and output: scripts/e2e-history-offline.sh, e2e-history-offline-0.3.2.out.

When a peer is online it also sends what it holds over Delivery, which covers anything older than what the store nodes keep.

@jzaki

jzaki commented Oct 1, 2026

Copy link
Copy Markdown
Collaborator

Thanks for clarifying, I hadn't seen that in the video.
I look forward to seeing meaningful/impactful use by the ecosyste 🙏
(Ça peut être dans ta langue natif aussi)

@edenbd1

edenbd1 commented Oct 1, 2026

Copy link
Copy Markdown
Contributor Author

Thanks a lot! I'll keep feeding the topics and getting people to use it, so it becomes a habit and they come back on their own. And good to know it can be in French too, that makes it easier to get the first real conversations going.

@edenbd1

edenbd1 commented Oct 2, 2026

Copy link
Copy Markdown
Contributor Author

Hi @jzaki, I opened a PR to add Logos Forum to the official Basecamp catalog: logos-co/logos-modules-release#98

Right now the main blocker for real usage is credibility. A forum only works if people feel safe having their conversations there, and installing it from an unknown package repository doesn't give that. Being in the official catalog would make it one click from the Package Manager and show it's an app the ecosystem stands behind, which is what I need to get real discussions going.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants