How tatogi/foodies-cms works
This is a Laravel commerce and content-management application: administrators maintain localized pages, posts, menus, media, products, and orders; website visitors discover content and products, manage carts, and complete checkout. It also exposes POS device/menu synchronization and AI chat/content capabilities. The sampled sources and README support the checkout, media, menu, chat, and POS links shown; other documented or tree-visible subsystems are included, but their internal calls are left unasserted where source was not sampled.
Main entry points: CheckoutService.php Payment flow · CheckoutController.php Checkout entry · WebsiteCartService.php Shopping cart · PageController.php Website pages
Components 25
Website experience
- Website pages
app/Http/Controllers/Website/PageController.php - Content queries
app/Repositories/Eloquent/EloquentWebsitePageRepository.php - Menu queries
app/Repositories/Eloquent/EloquentWebsiteMenuRepository.php - Website search
app/Services/Website/WebsiteSearchService.php
Commerce and POS
- Shopping cart
app/Services/Website/WebsiteCartService.php - Checkout entry
app/Http/Controllers/Checkout/CheckoutController.php - Payment flow
app/Services/Payments/CheckoutService.php - Order management
app/Http/Controllers/Admin/OrderController.php - POS endpoints
app/Http/Controllers/Pos/PosHeartbeatController.php - POS menu sync
app/Services/Pos/PosMenuSyncService.php
Content management
- CMS administration
app/Http/Controllers/Admin/PageController.php - Page workflows
app/Services/PageService.php - Menu editing
app/Http/Controllers/Admin/MenuController.php - Menu slug sync
app/Services/MenuPageSlugSyncService.php - Media library
app/Http/Controllers/Admin/MediaController.php - Media uploads
app/Services/MediaUploadService.php
Shared capabilities
- AI chat endpoint
app/Http/Controllers/AiChatController.php - Chat service
app/Services/AiChat/ChatService.php - Text embeddings
app/Services/AiChat/EmbeddingService.php - Contact submissions
app/Http/Controllers/Website/ContactSubmissionController.php - WhatsApp notifications
app/Services/Notifications/WhatsAppService.php - Application database
Other components
- Visitor
- BOG gateway
- Gemini embedding API
Connections 22
- Visitor → Website pages: requests pages
- Website pages → Content queries: queries content
- Visitor → Menu queries: requests navigation
- Visitor → Website search: searches catalog
- Visitor → Shopping cart: adds items
- Visitor → Checkout entry: starts checkout
README.md - Checkout entry → Shopping cart: reads cart
app/Http/Controllers/Checkout/CheckoutController.php - Checkout entry → Payment flow: starts payment
app/Http/Controllers/Checkout/CheckoutController.php - Payment flow → BOG gateway: redirects / callback
README.md - Payment flow → Order management: records outcome
- POS endpoints → POS menu sync: uses device service
- CMS administration → Page workflows: manages pages
- Menu editing → Menu slug sync: synchronizes slugs
app/Http/Controllers/Admin/MenuController.php - Media library → Media uploads: uploads files
app/Http/Controllers/Admin/MediaController.php - AI chat endpoint → Chat service: handles chat
app/Http/Controllers/AiChatController.php - Chat service → Text embeddings: retrieves context
- Text embeddings → Gemini embedding API: requests vectors
app/Services/AiChat/EmbeddingService.php - Contact submissions → WhatsApp notifications: sends notification
app/Http/Controllers/Website/ContactSubmissionController.php - Content queries → Application database: reads content
- Menu queries → Application database: reads menu data
app/Repositories/Eloquent/EloquentWebsiteMenuRepository.php - Shopping cart → Application database: persists cart
- Payment flow → Application database: stores payment state
README.md