log
Record a thought. Find it again later.
I made a private voice journal. Record a thought, keep the original audio, and find it later by searching the transcript.

The browser saves audio chunks in IndexedDB while I record. When I stop, the recording stays in a local upload queue until the server confirms it has arrived. An interrupted connection should not mean losing the recording.
Cloudflare R2 stores the audio, D1 stores the notes and searchable transcripts, and a queue handles transcription with Workers AI after the upload. Recording and playback do not have to wait for transcription to finish.
