Skip to content

feat(app): soft sounds for a message sent, a reply, a file and a new bot - #129

Merged
httpsphl merged 2 commits into
mainfrom
feat/app-sounds
Oct 2, 2026
Merged

httpsphl merged 2 commits into
mainfrom
feat/app-sounds

Conversation

@httpsphl

@httpsphl httpsphl commented Oct 2, 2026

Copy link
Copy Markdown
Owner

Why

Botloft only made a sound for notifications. A few soft sounds at the right moments make the app feel more alive, as long as they stay rare and quiet.

What

While Botloft is in front, with App sounds on (Settings > Notifications, on by default):

Moment Sound
The owner's message is sent a short, quiet tick
A reply arrives in the open chat a soft pop that settles
A bot shares a file in the open chat two bright notes
A bot or a crew is born (by the owner, the lead, anywhere) a quick rising spark
  • All of them are made on the spot with Web Audio, in the same timbre as the notification chime, and quieter than it. No sound files ship.
  • Nothing plays within 1.5 s of another sound, so many bots at once do not make a choir. Only a bot that needs the owner gets through.
  • Nothing plays while Botloft is behind (the Windows notification covers that), nor on clicks, keys, chat switches or streaming text.
  • chime.ts becomes tones.ts (the notes) and sounds.ts (when to play). Notification chimes still follow "Play a sound".
  • Texts in all three languages; spec 15.1 updated.

Checks

  • New tests (shell/sounds.test.tsx, with the synth mocked): tick on send and silence with the switch off; reply and file only in the open chat; spark for a new bot and nothing while behind; the 1.5 s gap and the exception for "needs".
  • pnpm check passes (291 tests).

Manual test

  • Listen in the real app: send, reply, shared file, new bot. Check that the volume and the feel are right, and that turning "App sounds" off silences them.

The app only chimed for notifications. Now, while Botloft is in front,
it also plays quieter sounds made on the spot, in the same timbre: a tick
when the owner's message leaves, a pop for a reply in the open chat, two
bright notes for a file shared there, and a rising spark when a bot or a
crew is born. "App sounds" in Settings > Notifications turns them off
(on by default). Nothing plays within 1.5 s of another sound, except a
bot that needs the owner.

chime.ts becomes tones.ts (the notes) and sounds.ts (when to play).
Spec 15.1 updated.
@httpsphl

httpsphl commented Oct 2, 2026

Copy link
Copy Markdown
Owner Author

Manual test: the owner listened in the real app (pnpm local, 0.9.0 build) and the sounds are good.

@httpsphl
httpsphl merged commit 0214bd8 into main Oct 2, 2026
4 checks passed
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.

1 participant