How jarus2004/shop_backend works
Shop Backend is a Laravel e-commerce REST API for web and mobile clients, with a server-rendered admin area. The customer workflow is to register or log in, browse categories and products, then create, view, or cancel orders; order creation checks availability and price, records order items, and adjusts stock transactionally. Admins manage catalog data and order statuses. The graph follows documented routes and sampled controller/model relationships; unsampled view and request details are represented only where the tree or source index supports them.
Main entry points: OrderController.php Order API · api.php API routes · AdminViewController.php Admin page routing · database.php Relational database
Components 28
HTTP entry points
- Web routes
routes/web.php - API routes
routes/api.php - Admin authorization
app/Http/Middleware/AdminMiddleware.php
Customer and admin API
- Authentication
app/Http/Controllers/Api/AuthController.php - Category API
app/Http/Controllers/Api/CategoryController.php - Product API
app/Http/Controllers/Api/ProductController.php - Order API
app/Http/Controllers/Api/OrderController.php - JSON response helpers
app/Http/Traits/ApiResponse.php - Category representation
app/Http/Resources/CategoryResource.php - Product representation
app/Http/Resources/ProductResource.php - Order representation
app/Http/Resources/OrderResource.php - Order item representation
app/Http/Resources/OrderItemResource.php - User representation
app/Http/Resources/UserResource.php
Commerce data
- Users
app/Models/User.php - Categories
app/Models/Category.php - Products
app/Models/Product.php - Orders
app/Models/Order.php - Order items
app/Models/OrderItem.php - Relational database
config/database.php - User factory
database/factories/UserFactory.php - Shop seed data
database/seeders/ShopSeeder.php
Admin interface
- Admin page routing
app/Http/Controllers/Admin/AdminViewController.php - Product management page
resources/views/admin/products/index.blade.php - Category management page
resources/views/admin/categories/index.blade.php - Order management page
resources/views/admin/orders/index.blade.php - Admin login page
resources/views/admin/login.blade.php
Other components
- Customer client
- Admin user
Connections 37
- Customer client → API routes: calls API
README.md - Admin user → Web routes: opens admin
- API routes → Authentication: routes to
routes/api.php - API routes → Category API: routes to
routes/api.php - API routes → Product API: routes to
routes/api.php - API routes → Order API: routes to
routes/api.php - Web routes → Admin page routing: routes to
routes/web.php - Web routes → Admin authorization: guards admin routes
- Admin page routing → Admin login page: renders
app/Http/Controllers/Admin/AdminViewController.php - Admin page routing → Product management page: renders
app/Http/Controllers/Admin/AdminViewController.php - Admin page routing → Category management page: renders
app/Http/Controllers/Admin/AdminViewController.php - Admin page routing → Order management page: renders
app/Http/Controllers/Admin/AdminViewController.php - Authentication → Users: creates and reads
app/Http/Controllers/Api/AuthController.php - Authentication → User representation: serializes
app/Http/Controllers/Api/AuthController.php - Category API → Categories: queries and updates
app/Http/Controllers/Api/CategoryController.php - Category API → Category representation: serializes
app/Http/Controllers/Api/CategoryController.php - Product API → Products: queries and updates
app/Http/Controllers/Api/ProductController.php - Product API → Product representation: serializes
app/Http/Controllers/Api/ProductController.php - Order API → Orders: creates and updates
app/Http/Controllers/Api/OrderController.php - Order API → Order items: creates and reads
app/Http/Controllers/Api/OrderController.php - Order API → Products: checks and adjusts stock
app/Http/Controllers/Api/OrderController.php - Order API → Order representation: serializes
app/Http/Controllers/Api/OrderController.php - Order representation → Order item representation: renders items
app/Http/Resources/OrderResource.php - Product representation → Category representation: renders category
app/Http/Resources/ProductResource.php - Authentication → JSON response helpers: formats responses
app/Http/Controllers/Api/AuthController.php - Category API → JSON response helpers: formats responses
app/Http/Controllers/Api/CategoryController.php - Product API → JSON response helpers: formats responses
app/Http/Controllers/Api/ProductController.php - Order API → JSON response helpers: formats responses
app/Http/Controllers/Api/OrderController.php - User factory → Users: builds
database/factories/UserFactory.php - Shop seed data → Users: seeds
database/seeders/ShopSeeder.php - Shop seed data → Categories: seeds
database/seeders/ShopSeeder.php - Shop seed data → Products: seeds
database/seeders/ShopSeeder.php - Users → Relational database: persists via ORM
- Categories → Relational database: persists via ORM
- Products → Relational database: persists via ORM
- Orders → Relational database: persists via ORM
- Order items → Relational database: persists via ORM