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.
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>
Updates tests to work with the new CommentsProvider constructor that
requires postUri and postCid parameters.
Changes:
- CommentsProvider tests: pass postUri/postCid in constructor, remove
parameters from loadComments calls
- Add MockCommentsProvider helper for widget tests
- Update FocusedThreadScreen tests to provide commentsProvider parameter
馃 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>