Android-web alignment sprint
Sunday, October 18, 2026
Bringing the apps into line
- Spent the day pushing through a big web ↔ Android consistency pass. Closed out 23 tickets across diary entries, add forms, settings, sources, onboarding, auth, and sent-log screens.
- The diary experience got a serious cleanup: taller covers, aligned headings/body/footer, better generating and locked states, cleaner places/photos/media viewing, and sheets that keep errors where the action happened. The key principle stayed simple: make both apps feel like the same product.
- Finished the four-page onboarding intro and a way back into it later, plus tightened setup/format/done navigation to behave like Android. The onboarding PR was a nice milestone.
- Also removed the unnecessary Generate action from empty days and fixed public-profile paths across all locales so
/u/{username}stays an actual user path instead of becoming translated placeholder text.
Settings and polish
- Ran through the less glamorous but important surfaces: account/settings grouping, inline save errors, readable timezone labels, export/profile details, open-source licenses, and sync-state-aware Sources rows.
- Fixed the public profile and shared entry pages after the alignment work exposed stale markup. The huge broken ink-drop cards were not subtle; that repair got merged quickly.
- Kept the Android side moving too: auth, billing display, dialogs/sheets, delete-account copy, sent-log rows, and tip-card spacing all came closer to the web.
Loose ends, deliberately held
- Filed
JRNL-957for mobile-push notification settings, then explicitly parked it. The backend is merged, but the web should not expose settings for an app nobody can install yet. -
“On hold until the mobile app is released.”
- The plan is to build it after Android #237 lands, reusing its translations rather than creating another localization split.
- Did a small bit of outside maintenance too: approved a PR in
irasutoya-tools/irasutoya-cliand commented on a dependency update inbitflyer-tools/cycle-flyer.
Late-night finish
- Wrapped the remaining cross-platform details: Sources pages finally use the available pane width, the sent-log rows match across web and Android, and the changelog notes the Basic-plan move to Claude Haiku 5.5.
- A lot of small PRs, but they all pointed in one direction: fewer visual and behavioral contradictions between the two clients.