code
Clone this repository
https://tangled.org/bretton.dev/coves-mobile
git@knot.bretton.dev:bretton.dev/coves-mobile
For self-hosted knots, clone URLs may differ based on your setup.
Add isOptimistic flag to PostDetailScreen to skip initial comment
loading for newly created posts that haven't been indexed yet.
Also adds AlwaysScrollableScrollPhysics for consistent pull-to-refresh.
馃 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Create post screen improvements:
- Community picker integration
- URL validation (http/https only)
- Input length limits from backend lexicon (title: 300, content: 10000)
- NSFW toggle with self-labels
- Language selection dropdown
- Navigate to feed after successful post creation
馃 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Full-screen community selection interface for post creation:
- Search with debounced client-side filtering
- Infinite scroll pagination
- Cached avatar images with error fallback
- Proper authenticated API service with disposal
- Member/subscriber count formatting (K/M suffixes)
馃 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Add CovesApiService methods for community operations:
- listCommunities(): Fetch communities with pagination and sorting
- createPost(): Create posts with title, content, embeds, and labels
Both methods include proper error handling and debug logging.
馃 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Add data models for community-related API operations:
- CommunitiesResponse and CommunityView for listing communities
- CommunityViewerState for subscription/membership status
- CreatePostRequest and CreatePostResponse for post creation
- ExternalEmbedInput for link embeds
- SelfLabels and SelfLabel for content labels (NSFW, etc.)
All models support const constructors for better performance.
馃 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Add per-post CommentsProvider caching with LRU eviction for instant
back-navigation, scroll position restoration, and draft text preservation.
Updates feed tests to reflect the new feed type tab behavior:
- Default feed is now Discover (not timeline)
- Authenticated users see both Discover and For You tabs
- Unauthenticated users see only Discover tab
- Updated test descriptions for clarity
馃 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>