How empty-developer/verse works
Verse is a cross-platform writing and reading community: users onboard and authenticate, discover posts and books, publish writing, and interact through likes and comments. The graph includes the documented feed, library, reading, and author/profile capabilities. Source excerpts confirm authentication persistence, post creation and image upload, and comment/like state operations; wiring from individual screens to several domain modules is not shown, so those links are omitted.
Main entry points: supabase.ts Supabase client · index.tsx App entry · usePosts.ts Post creation · useAuthStore.ts Authentication state
Components 25
App navigation
- App entry
app/index.tsx
Onboarding and identity
- Onboarding
app/onboarding.tsx - Onboarding content
service/options/OnboardingService.tsx - Sign in
app/(auth)/sign-in.tsx - Registration
app/(auth)/registration.tsx - Authentication state
stores/useAuthStore.ts
Writing community
- Social feed
app/(protected)/(tabs)/index.tsx - Post interaction
app/(protected)/like.tsx - Comments interface
components/ui/comments/CommentsSheet.tsx - Comment state
stores/useCommentStore.ts - Comment hook
hooks/useComments.ts - Post creation
hooks/usePosts.ts - Writer profile
app/(protected)/(tabs)/profile.tsx - Profile operations
lib/bio-user.ts
Reading library
- Book library
app/(protected)/(tabs)/library.tsx - Read a book
app/(protected)/book/[id].tsx - Book operations
lib/books.ts
Backend and state
- Post state
stores/usePostStore.ts - Post operations
lib/posts.ts - Comment operations
lib/comments.ts - Image uploads
lib/storage.ts - Supabase client
lib/supabase.ts
Other components
- Writer / reader
- Supabase service
- Device persistence
Connections 24
- Writer / reader → App entry: opens app
- App entry → Onboarding: routes first
- App entry → Sign in: routes unauthenticated
- App entry → Social feed: routes authenticated
- Onboarding → Onboarding content: uses content
- Sign in → Authentication state: authenticates via
- Registration → Authentication state: registers via
- Authentication state → Supabase client: calls auth
- Authentication state → Device persistence: persists state
- Social feed → Post creation: publishes through
- Post creation → Image uploads: uploads cover
- Post creation → Supabase client: inserts post
- Post creation → Post state: adds post
- Image uploads → Supabase client: uploads image
- Post state → Post operations: creates or removes likes
- Comments interface → Comment hook: uses
- Comment hook → Comment state: reads and updates
- Comment state → Comment operations: loads and creates comments
- Book library → Read a book: opens work
- Writer profile → Profile operations: profile data
- Book operations → Supabase client: backend access
- Post operations → Supabase client: backend access
- Comment operations → Supabase client: backend access
- Supabase client → Supabase service: connects