69 lines
2.3 KiB
Markdown
69 lines
2.3 KiB
Markdown
# Repository Overview
|
|
|
|
## Purpose
|
|
BukidBountyApp is a multi-vendor marketplace application built with Laravel/Hyperf PHP framework and Vue.js. It provides a platform for store owners, suppliers, and users to manage products, transactions, and credits within a hierarchical user system.
|
|
|
|
## Technologies Used
|
|
|
|
### Backend
|
|
- **PHP 8.2+** - Primary language
|
|
- **Hypervel Framework** (Laravel-style) - PHP framework with native coroutine support
|
|
- **Hyperf** - High-performance PHP framework components
|
|
- **SQLite/MySQL** - Database storage
|
|
- **Redis** - Caching and session management
|
|
- **JWT** - Authentication
|
|
|
|
### Frontend
|
|
- **Vue 3.5+** - JavaScript framework
|
|
- **Pinia** - State management (replaces Vuex)
|
|
- **Axios** - HTTP client
|
|
|
|
## Entry Points
|
|
- `/login` - Authentication page
|
|
- `/` - Root SPA route (Vue Router handles client-side routing)
|
|
- `/p/{page}/s/` - Server-side page rendering with template
|
|
- `/sp/login` - Special login route
|
|
|
|
## Key Subsystems
|
|
|
|
### User Management
|
|
- Hierarchical user roles (13 types from Ultimate to Public)
|
|
- User CRUD operations (create, disable, enable, delete)
|
|
- Role assignment and permission management
|
|
- Credit transfer functionality
|
|
|
|
### Market/Products
|
|
- Product management (CRUD operations)
|
|
- Store management
|
|
- Product transactions
|
|
- Category/subcategory system
|
|
- Store-product relationship management
|
|
|
|
### File Management
|
|
- File upload handling
|
|
- Photo gallery management
|
|
- File list tracking
|
|
|
|
## High-Level Structure
|
|
|
|
```
|
|
app/
|
|
├── Http/Controllers/ # Request handlers
|
|
│ ├── Pages/ # Page controllers
|
|
│ ├── Market/ # Product/store controllers
|
|
│ ├── UserManagement/ # User admin controllers
|
|
│ └── Support/ # Utility controllers
|
|
├── Models/ # Data models
|
|
│ ├── Market/ # Product, Store, Transaction models
|
|
│ └── Generic/ # Base model classes
|
|
├── Enums/ # Value objects (UserTypes, UserActions)
|
|
└── Http/Middleware/ # Request filtering
|
|
|
|
resources/
|
|
├── js/Pages/ # Vue components
|
|
│ ├── Auth/ # Authentication pages
|
|
│ └── Fragments/ # Layout fragments
|
|
└── views/ # Blade templates
|
|
|
|
routes/ # Route definitions
|
|
database/ # Migrations and seeders |