2.3 KiB
2.3 KiB
Cannabrands B2B Platform – Development Plan
🚧 Development Tools
- ChatGPT: For strategic planning, architecture decisions, and feature scaffolding
- Cursor: For inline AI-assisted coding and refactoring
- Figma: UI design source, translated using Tailwind CSS
- Git/GitHub: Version control
🧱 Chosen Tech Stack
| Layer | Technology |
|---|---|
| Backend | Laravel (latest stable) |
| Frontend | Blade + Tailwind CSS |
| UI Components | DaisyUI |
| Admin Panel | Filament (optional, phase 2+) |
| Permissions | spatie/laravel-permission |
| Media Uploads | spatie/laravel-medialibrary |
| Notifications | Laravel’s built-in Notification system |
| Dynamic UI | Livewire (optional, if needed) |
| Testing | Pest (preferred over PHPUnit) |
🧭 Development Approach
- App is structured in phases for incremental development.
- Phase 1 includes:
- Buyer & Seller roles
- Authentication & registration
- Role-based dashboards:
- Buyer: Browse products, place orders, view order history
- Seller: Manage product listings, process orders
- Product catalog & order system (with line items)
- Order status notifications
- Clean, modular Laravel codebase with minimal tech debt
🎨 Design Process
- All components must follow TailwindCSS spacing and typography utilities.
- Use DaisyUI to implement components cleanly.
- Translate pixel-perfect Figma designs into Blade components.
- Components should be reusable and match a design system.
🧠 Workflow & Philosophy
- Use AI (ChatGPT + Cursor) heavily throughout development.
- Prioritize clean, service-based logic over bloated controllers.
- Avoid premature Livewire or SPA complexity — introduce only where justified.
- Prefer Blade + Tailwind + Alpine for UI.
- Use
spatie/laravel-permissionandspatie/laravel-medialibraryover custom ACLs/media logic.
🏗️ Future Phases (Outline)
- Add multi-tenancy using spatie/laravel-multitenancy or stancl/tenancy
- Consider Filament for internal admin panel
- Add customer invoicing and payment features
- Advanced analytics/dashboarding
- Audit trail and activity logging