Clone this repository
For self-hosted knots, clone URLs may differ based on your setup.
Download tar.gz
Like button: scale bounce animation (spring), crossfade icon, red (error) color when active
Repost button: scale bounce animation, crossfade icon, tertiary color when active
Repost long-press: heavy haptic confirms quote-post gesture registered
All action buttons (share, reply, like, repost): light haptic on tap
Follow/unfollow: confirmation haptic
Tab switching: light haptic
Scroll-to-top FABs: light haptic
Compose FAB: light haptic
Send post button: confirmation haptic
Content warning reveal: heavy haptic for deliberate action
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add error fallback to all AsyncImage calls so failed loads show placeholder instead of disappearing
- Bump Coil disk cache from 2% to 5%
- Fix session restore treating all errors as auth errors (only clear session on real auth failures)
- Fix mutex deadlock in create() using try/finally
- Close all one-off HttpClient instances to prevent resource leaks
- Add retry (3x exponential backoff) to all HTTP clients including login, PDS resolution, and uploads
- Bump video upload timeout to 5 minutes for mobile networks
- Increase all HTTP timeouts from 15s to 30s
- Clear error state after displaying snackbar to prevent stale errors
- Content warnings now show author info (avatar, name, handle) and only hide post content
- Highlight unread notifications with primaryContainer tint
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>