PHP code example of codivores / laravel-modular-api
1. Go to this page and download the library: Download codivores/laravel-modular-api library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
codivores / laravel-modular-api example snippets
return [
/*
|--------------------------------------------------------------------------
| API configuration
|--------------------------------------------------------------------------
*/
'api' => [
'routing' => [
'url' => env('MODULAR_API_ROUTING_URL', env('APP_URL', 'http://localhost')),
'url_prefix' => env('MODULAR_API_ROUTING_URL_PREFIX', '/'),
'route_prefix' => env('MODULAR_API_ROUTING_ROUTE_PREFIX', 'api'),
'enable_version_prefix' => env('MODULAR_API_ROUTING_ENABLE_VERSION_PREFIX', true),
'enable_type_prefix' => env('MODULAR_API_ROUTING_ENABLE_TYPE_PREFIX', true),
],
'resource' => [
'custom_type_resolver' => env('MODULAR_API_RESOURCE_CUSTOM_TYPE_RESOLVER', false),
],
],
/*
|--------------------------------------------------------------------------
| Web configuration
|--------------------------------------------------------------------------
*/
'web' => [
'routing' => [
'url' => env('MODULAR_API_WEB_ROUTING_URL', env('APP_URL', 'http://localhost')),
],
],
/*
|--------------------------------------------------------------------------
| Modular code configuration
|--------------------------------------------------------------------------
*/
'services' => [
'root_path' => env('MODULAR_API_SERVICES_ROOT_PATH', 'Services'),
],
/*
|--------------------------------------------------------------------------
| Features configuration
|--------------------------------------------------------------------------
*/
'features' => [
'rate_limiting' => [
'enabled' => env('MODULAR_API_FEATURE_RATE_LIMITING_ENABLED', false),
'attempts' => env('MODULAR_API_FEATURE_RATE_LIMITING_ATTEMPTS_PER_MIN', 30),
'expires' => env('MODULAR_API_FEATURE_RATE_LIMITING_EXPIRES_IN_MIN', 1),
],
'localization' => [
'enabled' => env('MODULAR_API_FEATURE_LOCALIZATION_ENABLED', false),
'request_header' => env('MODULAR_API_FEATURE_LOCALIZATION_REQUEST_HEADER', 'Accept-Language'),
'locales' => env('MODULAR_API_FEATURE_LOCALIZATION_LOCALES', env('APP_LOCALE', 'en')),
],
'hash_ids' => [
'enabled' => env('MODULAR_API_FEATURE_HASH_IDS_ENABLED', false),
'salt' => env('MODULAR_API_FEATURE_HASH_IDS_KEY', env('APP_KEY')),
'length' => env('MODULAR_API_FEATURE_HASH_IDS_LENGTH', 20),
'alphabet' => env('MODULAR_API_FEATURE_HASH_IDS_ALPHABET',
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'),
],
],
];
App/
Services/
DomainA/
Service1/
Config/
Data/
Migrations/
Http/
Controllers/
Endpoints/
Requests/
WebEndpoints/
Mails/
Templates/
Models/
Resources/
Providers/
MainServiceProvider.php
Views/
Service2/
...
DomainB/
Service1/
...
Service2/
...
bash
php artisan vendor:publish --tag="modular-api-config"