How abdellahmdi/khmis-sanad works
Khmis-Sanad is a multi-vendor artisan marketplace: buyers browse products, manage a cart, and initiate order discussions with sellers; artisans maintain cooperative storefronts and inventory. The React SPA is documented as a client of a Laravel REST API, with Laravel controllers handling authentication, catalog, cart/orders, reviews, and seller operations. The README also describes moderation and email alerts, but sampled source does not establish their implementation or wiring. Some frontend and API behavior is inferred from the tree and README, so uncertain links are omitted.
Main entry points: api.php API routes · Models Domain models · App.jsx React SPA · HomePage.jsx Marketplace UI
Components 18
Buyer experience
- React SPA
Frontend/src/App.jsx - Marketplace UI
Frontend/src/pages/HomePage.jsx - API client
Frontend/src/api/axiosClient.js
Laravel API
- API routes
Backend/routes/api.php - Authentication
Backend/app/Http/Controllers/Api/AuthController.php
Marketplace operations
- Product catalog
Backend/app/Http/Controllers/Api/ProductController.php - Categories
Backend/app/Http/Controllers/Api/CategoryController.php - Cart management
Backend/app/Http/Controllers/Api/CartController.php - Buyer orders
Backend/app/Http/Controllers/Api/OrderController.php - Storefronts
Backend/app/Http/Controllers/Api/ShopController.php - Seller inventory
Backend/app/Http/Controllers/Api/ShopProductController.php - Seller orders
Backend/app/Http/Controllers/Api/ShopOrderController.php - Reviews
Backend/app/Http/Controllers/Api/ReviewController.php
Persistent data
- Domain models
Backend/app/Models - Application database
Backend/config/database.php
Other components
- Buyer
- Artisan
Connections 25
- Buyer → React SPA: uses
- Artisan → React SPA: uses
- React SPA → Marketplace UI: renders
- Marketplace UI → API client: requests API
- API client → API routes: sends requests
- API routes → Authentication: dispatches
- API routes → Product catalog: dispatches
- API routes → Categories: dispatches
- API routes → Cart management: dispatches
- API routes → Buyer orders: dispatches
- API routes → Storefronts: dispatches
- API routes → Seller inventory: dispatches
- API routes → Seller orders: dispatches
- API routes → Reviews: dispatches
- React SPA → WhatsApp: opens order chat
- Authentication → Domain models: reads/writes
- Product catalog → Domain models: reads
- Categories → Domain models: reads
- Cart management → Domain models: reads/writes
- Buyer orders → Domain models: reads/writes
- Storefronts → Domain models: reads/writes
- Seller inventory → Domain models: reads/writes
- Seller orders → Domain models: reads/writes
- Reviews → Domain models: reads/writes
- Domain models → Application database: persists