2026-05-31·Yifan

A Week in Covenant: Backdated Journals, a Real Profile Page, and a Combat Preview

Less of a single big shift this week, more a handful of features that each had a sharp edge I'd been ignoring for too long.

The journal remembers

I shipped the journal module assuming users would write in it the same day something happened. But then I noticed I frequently write in my journal the next morning. So I improved it:

  • Backdate entries. Pick a past day and write into it
  • Infinite scroll instead of a wall of every entry you've ever written loading at once
  • A per-day mana cap. Journaling earns mana, and without a cap "write 40 one-word entries" becomes an infinite mana printer. Now there's a daily ceiling

A fresh profile page

Account settings used to be scattered and half-missing. There's now a dedicated profile page that does the boring-but-essential things:

  • Change your email and update your password
  • A danger zone for deleting your account — walled off and deliberately striking

The landing page throws a punch

The public page was all words.

  • An animated combat preview in the hero banner that shows the game loop — completing tasks, earning mana, using an ability and killing demons
  • Updated coming-soon section with factions, warfronts, calendar sync

Small things with teeth

  • You're allowed to quit. Quests got an abandon action with a confirm dialog, for cowards that don't have the balls to die in battle.
  • The calendar shows your mood. Each day tints by how you logged it, so a glance at the month tells you something before you read a word

Under the hood

  • Analytics, finally. Wired up PostHog for events and feature flags, including an activation event so I can actually see whether people complete the core loop instead of guessing. Measure first, then decide what to cut
  • Migrated all IDs from UUIDs to bigints with separate public IDs. Faster lookups, smaller indexes, and URLs stop leaking internal row counts. Pure plumbing, but the kind you only get to redo cheaply while the data model is still small
  • Fixed Google sign-up flow — Google users were sneaking in the side door and skipping onboarding. Now they get routed through onboarding like everyone else. No special treatment

See you next week, be mischievous ( • ᴗ - ) ✧

We use essential cookies to keep you signed in and remember your language preference. Learn more