Playback

A monthly letter from Beacon about what happened, what improved, and what you logged that matters.

When to use this

Use Playback at the end of a month when you want to see the shape of the month instead of the day. Beacon reads everything you logged (behaviors, wins, journal entries, check-ins) and writes a structured letter you can read on the couch in 3 minutes. The structure forces context: not just 'here are the numbers' but 'here's what changed and why it matters'. Share it with a partner, a therapist, or your own future self.

How it works

  1. Generate this month's Playback

    Tap the button. Beacon pulls the last calendar month of your data, writes a 4-6 card letter (title + heading/body per card), and routes you to the read view. ~10-30 seconds depending on volume.

  2. Card structure

    Each card has a heading, a body paragraph, and a hidden why-it-works note. Headings are the month's themes (e.g., 'Bedtime turned a corner', 'School Wednesdays were rough'). Bodies are 2-4 sentences in plain language.

  3. Save the past

    Every Playback you've generated lives in the list, sorted newest first. Tap any to re-read. Useful when 'last month was a blur' is actually closer to 'last month had 3 distinct phases'.

  4. Share via public link

    Each Playback can be shared by toggling its share token. The link is public-read-only. Send to a partner or therapist who does not have a Beacon account.

What Beacon stores when you use it

playbacks: One row per generated Playback. Beacon writes the row; you read it. summary_json holds the structured letter.

ColumnTypeExample
idUUID
2a8d...
Auto-generated; used in URLs.
user_idUUID
your-user-id
RLS-locked to you (or public via share_token).
period_startdate
2026-04-01
First day the Playback covers.
period_enddate
2026-04-30
Last day the Playback covers.
summary_jsonjsonb
{ "title": "Mia, April 2026", "cards": [{ "heading": "...", "body": "...", "whyItWorks": "..." }], "plainText": "..." }
Structured letter. The plainText copy lives here for paste-ability.
share_tokenUUID (nullable)
(null until shared)
Public-read via /playback/share/[token] when set.
created_attimestamp
2026-05-01T08:14:00Z
When you tapped Generate.

A real example

April 2026 Playback for Avery. Beacon found 4 themes from 26 days of logged data.

CardHeadingBody
1This month in one sentenceIt was hard and it was real, and you stayed in the room.
2Bedtime turned a cornerWins logged on April 10, 18, 22: Avery brushed teeth without protest. Three times in two weeks is a pattern.
3Wednesdays were the hard ones4 of 7 Drowning journal entries fell on Wednesday. Behaviors-day logs cluster Wed 14:00-17:00. Worth looking at the schedule.
4Where you stayed steadyDespite the Wednesdays, 12 of 20 check-ins were 'coping' or 'steady'. That is not nothing.

What Beacon auto-knows

  • Counts: how many wins, journal entries, check-ins, behaviors days in the month.
  • Themes: which days were hard, which days were good, which behaviors trended up or down.
  • Cross-references: behaviors clusters vs schedule blocks, journal moods vs day-of-week.

What Discuss with Beacon adds

  • When you Discuss from a Playback, the structured cards + plainText attach to chat.
  • Beacon can expand any card: 'Tell me more about the Wednesday cluster.'
  • Or compare to the last Playback: 'How was April different from March?'

Try these with Beacon

Open Playback in Beacon โ†’

Related guides