Community Building submission: Porchlight 🏮
Porchlight is a new MIT-licensed onboarding companion for small Concord communities on Nostr, started August 15 for
#TwoWeeks.
The problem: encrypted communities can still leave a newcomer wondering what to read, where to talk, or whom to ask. Porchlight adds an operator-configured welcome layer without turning optional profile details into public command arguments.
What it does:
• Welcomes MemberJoin events and sends a checklist over encrypted DM.
• /intro has no arguments in the community. Profile capture moves to a token-bound ordinary DM.
• /resources and /events expose curated local information.
• /buddy is strictly opt-in and makes one private introduction only when two current members share a declared interest. /buddy_leave and /forget let either person leave.
• Membership and private-channel access are rechecked before profile/queue changes and again before queued welcomes or introductions are sent. Missing evidence fails closed.
Source and reproducible setup:
https://github.com/fth040818/porchlight-concordLive/protocol evidence:
• Bot:
@Porchlight• Signed 10-command kind-10304 manifest:
• A final-code two-member Concord v2 run completed public /intro → private profile → opt-in buddy matching; both independent clients received PLM-00000004. Evidence:
https://github.com/fth040818/porchlight-concord/blob/main/docs/e2e-evidence.md• Rust 1.91 MSRV, Ubuntu and Windows CI are green:
https://github.com/fth040818/porchlight-concord/actions/runs/32035520410Honest limits: this is an experimental MVP, not a production moderation or safety service. Membership is an eventually consistent local fold. Offline MemberJoin/commands are not replayed. /forget removes Porchlight state, not Vector SQLite history, relays, delivered messages, screenshots or backups. Encrypted transport is not complete encryption at rest. The pinned Vector core also has a known post-rekey channel issue:
https://github.com/VectorPrivacy/Vector/issues/84AI disclosure: Porchlight was designed and implemented with OpenAI Codex as a development collaborator. The operator authorized the task; the source, tests, privacy boundary and evidence are public. No claim is made that this was unaided work.