Bell 0.1.0: one list for the conversations around your posts
Bell is an Android app for one job: the conversations around your Nostr posts. Connect your accounts (Bell is built for around ten) and it gathers replies, quotes and the discussion beneath them into one chronological activity list. Likes, zaps, plain reposts and generic mentions are left out.
The list is a permanent history: every activity keeps its own row, and there is nothing to clear, mark as handled or archive.
Tap a row to open the available conversation tree: the context above it, replies beneath replies, quotes, quotes of quotes and the discussion under them. Bell loads the tree in bounded pages, and relays may not hold every event, so context can be partial. The tree shows where events are missing or still loading. An event that reaches several of your accounts appears once, labeled with each account that received it. All accounts show by default. You can filter to one account, or to direct replies and direct quotes of your posts, which leaves out the indirect discussion beneath them. Conversations among your own connected accounts appear too.
Bell fills in history gradually as it backfills from relays. Relays keep varying amounts of older data, so Bell marks history as incomplete where events may be missing.
Your keys stay in Amber, which signs each reply and reaction for Bell. Watch-only accounts, added by pasting a public key, show their activity, while replies and reactions come from your Amber accounts. Every reply and reaction shows its sender, and that sender stays fixed unless you deliberately pick another account, so you always know which account is speaking. Replies are text for now, and incoming images display. Each account has its own emoji favorites: one for single-tap reactions, more in a compact pill anchored to the post, custom image emoji included. If a send fails, Bell keeps your draft. Bell verifies signatures and shows whether a relay accepted your event or delivery is still unconfirmed.
Phone alerts are optional. They’re grouped to limit interruptions, with quiet, normal and prominent levels. On the lock screen you choose a full preview or a generic Bell message. You can silence a thread or subthread, including its quote descendants, and its history stays in the list.
Bell connects to relays directly and uses outbox (NIP-65) relay routing. Settings are stored locally on this phone. Optional background listening shows an ongoing Android notification. It is still subject to Android power and network restrictions, which can pause or delay it, so Bell can’t promise always-on listening or immediate alerts.
The look is pure black surfaces, compact controls and restrained accents, with a white bell as the icon. A large persistent local cache keeps events, media and avatars on the device, so returning to a conversation reuses images already downloaded.
Bell is written in Kotlin with Jetpack Compose and uses Quartz for Nostr protocol work. Version 0.1.0 is the first release.
Write a comment