Sonora turns Markdown notes into a listening queue. Listen chapter by chapter, resume where you stopped, and record a voice response that remains in your vault.
Once Sonora is listed in the Obsidian Community Plugins directory:
- Open Settings → Community plugins → Browse.
- Search for Sonora, select it, and choose Install.
- Choose Enable.
For manual installation, download main.js, manifest.json, and styles.css from the matching GitHub release, place them in <vault>/.obsidian/plugins/sonora/, then enable Sonora under Settings → Community plugins.
- Open a Markdown note you want to hear.
- Run Sonora: Add active note to listening queue from the command palette.
- Run Sonora: Open listening workspace to play the note, navigate its heading-based chapters, adjust speed, or record a voice response.
To practise vocabulary instead, format the note as shown below and run Sonora: Add active note as a vocabulary drill.
- Add the active Markdown note to a persistent listening queue.
- Treat headings as chapters and remove common Markdown syntax before speech.
- Play, pause, restart, and move between chapters with configurable speed.
- Expose play, pause, previous, and next actions through the browser Media Session API when available.
- Record a voice response and optionally append its local embed to the source note.
- Use the same responsive view on desktop and mobile.
- Turn a vocabulary note into a looping language drill with a configurable recall pause.
Use a heading for each term and Markdown list fields for its answer:
## resilient
- meaning: 回復力がある
- pronunciation: /rɪˈzɪliənt/
- example: The system must remain resilient.Run Sonora: Add active note as a vocabulary drill. Sonora reads the term, waits for the configured recall interval, reads the answer and example, then advances. Loop can be toggled from the player.
The same episode model is intended to support generated connection podcasts later. AI generation is not included yet because a secure provider and credential boundary must be selected before implementation.
Sonora uses the device speech-synthesis and recording APIs. It does not send note or audio content to an external service. Recording-recovery roots and the anonymous recovery installation ID are stored through Obsidian's vault-scoped storage. On first launch after upgrading, Sonora copies valid legacy browser-storage values into the current vault without deleting the legacy copy.
Background speech and headset controls depend on the capabilities exposed by Obsidian Mobile's web view and the operating system. The plugin exposes Media Session controls, but uninterrupted playback while the screen is locked must be verified on each supported mobile release.
Sonora's Open listening workspace command ID changed from sonora:open-sonora to sonora:open-workspace to follow the Obsidian Community Plugin policy. If you assigned a hotkey to this command in 0.1.1, assign it again under Settings → Hotkeys → Sonora: Open listening workspace. Other Sonora hotkeys are unaffected.
pnpm install
pnpm test
pnpm typecheck
pnpm build