How vondakcompany/eatodakimasu works
Eato is a restaurant discovery and information-management application. Diners browse and filter restaurants, then open a restaurant profile; restaurant operators can register or update listings, while staff manage listings and site content through an admin area. Supabase provides the observed data and authentication backend. The graph reflects sampled source for public search, translations, menu editing, and selected API routes; other admin capabilities are included from the repository tree, with uncertain wiring omitted.
Main entry points: admin/page.tsx Admin workspace · app/page.tsx Directory search · supabaseClient.ts Supabase client · LanguageContext.tsx Language provider
Components 24
Restaurant discovery
- Directory search
app/page.tsx - Search filters
components/SearchBar.tsx - Restaurant results
components/RestaurantCard.tsx - Restaurant profile
app/restaurant/[id]/page.tsx
Listing operations
- Restaurant registration
app/register/page.tsx - PIN verification
app/api/verify-pin/route.ts - Listing updates
app/api/update-restaurant/route.ts
Staff administration
- Admin workspace
app/admin/page.tsx - Directory management
app/admin/Directory.tsx - Pending listings
app/admin/Pending.tsx - Menu editor
app/admin/MenuManager.tsx - Category hub
app/admin/CategoryHub.tsx - Ad studio
app/admin/AdStudio.tsx - Translation manager
app/admin/Translations.tsx - User management
app/admin/UserManagement.tsx - Invite user
app/api/invite-user/route.ts - Remove user
app/api/remove-user/route.ts - Registration editor
app/admin/RegistrationEditor.tsx
Shared platform
- Language provider
contexts/LanguageContext.tsx - Supabase client
lib/supabaseClient.ts - Supabase data
- Supabase Auth
- Resend email API
Other components
- Diner
Connections 31
- Diner → Directory search: browses
- Directory search → Search filters: uses filters
- Directory search → Supabase client: queries listings
- Directory search → Restaurant results: renders results
- Directory search → Restaurant profile: opens listing
- Restaurant profile → Supabase client: loads listing
- Restaurant registration → Supabase client: loads data
- Restaurant registration → PIN verification: verifies PIN
- Supabase client → Supabase data: reads and writes
- Admin workspace → Directory management: hosts section
- Admin workspace → Pending listings: hosts section
- Admin workspace → Menu editor: hosts section
- Admin workspace → Category hub: hosts section
- Admin workspace → Ad studio: hosts section
- Admin workspace → Translation manager: hosts section
- Admin workspace → User management: hosts section
- Admin workspace → Registration editor: hosts section
- Menu editor → Supabase data: updates menus
- Listing updates → Supabase data: updates listings
- PIN verification → Supabase data: checks and updates
- PIN verification → Resend email API: sends reset email
- User management → Invite user: invites user
- User management → Remove user: removes user
- Invite user → Supabase Auth: invites account
- Invite user → Supabase data: stores profile
- Remove user → Supabase Auth: deletes account
- Remove user → Supabase data: deletes profile
- Language provider → Supabase client: loads translations
- Language provider → Supabase data: syncs translations
- Directory search → Language provider: uses language
- Restaurant profile → Language provider: uses language