- Faveo plugins are structured as modular mini Laravel projects, enhancing:
- Development efficiency
- Maintenance simplicity
- System modularity
- Command:
php artisan make:plugin {plugin-name}
- Generated Structure: A comprehensive directory and file system tailored for plugin development.
- Core Directories:
- Console: Artisan commands
- Controllers: For admin, user, and agent functionalities
- Cron: Scheduled tasks
- Middleware: Middleware classes
- Model: Eloquent models
- Public: Scripts and assets
- Requests: Form validation classes
- Database: Factories, migrations, and seeders
- Tests: Backend and frontend test cases
- Views: Blade templates
- Lang: Multi-language support
- Key Files:
ServiceProvider.php
: Plugin registration and initializationconfig.php
: Plugin configuration settingsbreadcrumbs.php
: Breadcrumb navigation definitionsroutes.php
: Routing logic
app
└── Plugins
└── {plugin-name}
├── Console
├── Controllers
│ ├── Admin
│ ├── User
│ └── Agent
├── Cron
├── Middleware
├── Model
├── Public
│ └── Script
├── Requests
├── Database
│ ├── Factories
│ ├── Migrations
│ └── Seeds
├── Tests
│ ├── Backend
│ └── Frontend
├── Views
│ ├── Admin
│ └── User
├── Lang
│ └── {language-directories}
├── ServiceProvider.php
├── config.php
├── breadcrumbs.php
└── routes.php
- Facilitates modular development.
- Enhances maintainability.
- Ensures consistency across plugins.