hamza-wakrim / api-framework
Optimized Laravel Framework for API-only applications - Lightweight and fast.
Installs: 13
Dependents: 1
Suggesters: 0
Security: 0
Stars: 1
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/hamza-wakrim/api-framework
Requires
- php: ^8.2
- composer-runtime-api: ^2.2
- ext-ctype: *
- ext-filter: *
- ext-hash: *
- ext-mbstring: *
- ext-openssl: *
- ext-session: *
- ext-tokenizer: *
- brick/math: ^0.11|^0.12|^0.13|^0.14
- doctrine/inflector: ^2.0.5
- dragonmantank/cron-expression: ^3.4
- fruitcake/php-cors: ^1.3
- guzzlehttp/guzzle: ^7.8.2
- guzzlehttp/uri-template: ^1.0
- laravel/prompts: ^0.3.0
- laravel/serializable-closure: ^1.3|^2.0
- league/flysystem: ^3.25.1
- league/flysystem-local: ^3.25.1
- league/uri: ^7.5.1
- monolog/monolog: ^3.0
- nesbot/carbon: ^3.8.4
- psr/container: ^1.1.1|^2.0.1
- psr/log: ^1.0|^2.0|^3.0
- psr/simple-cache: ^1.0|^2.0|^3.0
- ramsey/uuid: ^4.7
- symfony/console: ^7.2.0
- symfony/error-handler: ^7.2.0
- symfony/finder: ^7.2.0
- symfony/http-foundation: ^7.2.0
- symfony/http-kernel: ^7.2.0
- symfony/polyfill-php83: ^1.33
- symfony/polyfill-php84: ^1.33
- symfony/polyfill-php85: ^1.33
- symfony/process: ^7.2.0
- symfony/routing: ^7.2.0
- symfony/uid: ^7.2.0
- symfony/var-dumper: ^7.2.0
- vlucas/phpdotenv: ^5.6.1
- voku/portable-ascii: ^2.0.2
Requires (Dev)
- ext-gmp: *
- ably/ably-php: ^1.0
- aws/aws-sdk-php: ^3.322.9
- fakerphp/faker: ^1.24
- guzzlehttp/promises: ^2.0.3
- guzzlehttp/psr7: ^2.4
- laravel/pint: ^1.18
- league/flysystem-aws-s3-v3: ^3.25.1
- league/flysystem-ftp: ^3.25.1
- league/flysystem-path-prefixing: ^3.25.1
- league/flysystem-read-only: ^3.25.1
- league/flysystem-sftp-v3: ^3.25.1
- mockery/mockery: ^1.6.10
- opis/json-schema: ^2.4.1
- orchestra/testbench-core: ^10.7.0
- pda/pheanstalk: ^5.0.6|^7.0.0
- php-http/discovery: ^1.15
- phpstan/phpstan: ^2.0
- phpunit/phpunit: ^10.5.35|^11.5.3|^12.0.1
- predis/predis: ^2.3|^3.0
- resend/resend-php: ^0.10.0|^1.0
- symfony/cache: ^7.2.0
- symfony/http-client: ^7.2.0
- symfony/psr-http-message-bridge: ^7.2.0
- symfony/translation: ^7.2.0
Suggests
- ext-apcu: Required to use the APC cache driver.
- ext-fileinfo: Required to use the Filesystem class.
- ext-ftp: Required to use the Flysystem FTP driver.
- ext-gd: Required to use Illuminate\Http\Testing\FileFactory::image().
- ext-memcached: Required to use the memcache cache driver.
- ext-pcntl: Required to use all features of the queue worker and console signal trapping.
- ext-pdo: Required to use all database features.
- ext-posix: Required to use all features of the queue worker.
- ext-redis: Required to use the Redis cache and queue drivers (^4.0|^5.0|^6.0).
- ably/ably-php: Optional: Required to use the Ably broadcast driver (^1.0).
- aws/aws-sdk-php: Optional: Required to use the SQS queue driver, DynamoDb failed job storage, and SES mail driver (^3.322.9).
- brianium/paratest: Optional: Required to run tests in parallel (^7.0|^8.0).
- egulias/email-validator: Optional: Required only if using Mail features (^3.2.1|^4.0).
- fakerphp/faker: Optional: Required to generate fake data using the fake() helper (^1.23).
- filp/whoops: Optional: Required for friendly error pages in development (^2.14.3).
- laravel/tinker: Optional: Required to use the tinker console command (^2.0).
- league/commonmark: Optional: Required only if using Mail with Markdown templates (^2.7).
- league/flysystem-aws-s3-v3: Optional: Required to use the Flysystem S3 driver (^3.25.1).
- league/flysystem-ftp: Optional: Required to use the Flysystem FTP driver (^3.25.1).
- league/flysystem-path-prefixing: Optional: Required to use the scoped driver (^3.25.1).
- league/flysystem-read-only: Optional: Required to use read-only disks (^3.25.1)
- league/flysystem-sftp-v3: Optional: Required to use the Flysystem SFTP driver (^3.25.1).
- mockery/mockery: Optional: Required to use mocking (^1.6).
- nunomaduro/termwind: Optional: Required only if using enhanced console output (^2.0).
- pda/pheanstalk: Optional: Required to use the beanstalk queue driver (^5.0).
- php-http/discovery: Optional: Required to use PSR-7 bridging features (^1.15).
- phpunit/phpunit: Optional: Required to use assertions and run tests (^10.5.35|^11.5.3|^12.0.1).
- predis/predis: Optional: Required to use the predis connector (^2.3|^3.0).
- psr/http-message: Optional: Required to allow Storage::put to accept a StreamInterface (^1.0).
- pusher/pusher-php-server: Optional: Required to use the Pusher broadcast driver (^6.0|^7.0).
- resend/resend-php: Optional: Required to enable support for the Resend mail transport (^0.10.0|^1.0).
- symfony/cache: Optional: Required to PSR-6 cache bridge (^7.2).
- symfony/filesystem: Optional: Required to enable support for relative symbolic links (^7.2).
- symfony/http-client: Optional: Required to enable support for the Symfony API mail transports (^7.2).
- symfony/mailer: Optional: Required only if using Mail features (^7.2.0).
- symfony/mailgun-mailer: Optional: Required to enable support for the Mailgun mail transport (^7.2).
- symfony/mime: Optional: Required only if using Mail features (^7.2.0).
- symfony/postmark-mailer: Optional: Required to enable support for the Postmark mail transport (^7.2).
- symfony/psr-http-message-bridge: Optional: Required to use PSR-7 bridging features (^7.2).
- tijsverkoyen/css-to-inline-styles: Optional: Required only if using Mail with HTML templates (^2.2.5).
Provides
- psr/container-implementation: 1.1|2.0
- psr/log-implementation: 1.0|2.0|3.0
- psr/simple-cache-implementation: 1.0|2.0|3.0
Conflicts
- tightenco/collect: <5.5.33
Replaces
- illuminate/auth: dev-master
- illuminate/broadcasting: dev-master
- illuminate/bus: dev-master
- illuminate/cache: dev-master
- illuminate/collections: dev-master
- illuminate/concurrency: dev-master
- illuminate/conditionable: dev-master
- illuminate/config: dev-master
- illuminate/console: dev-master
- illuminate/container: dev-master
- illuminate/contracts: dev-master
- illuminate/cookie: dev-master
- illuminate/database: dev-master
- illuminate/encryption: dev-master
- illuminate/events: dev-master
- illuminate/filesystem: dev-master
- illuminate/hashing: dev-master
- illuminate/http: dev-master
- illuminate/json-schema: dev-master
- illuminate/log: dev-master
- illuminate/macroable: dev-master
- illuminate/mail: dev-master
- illuminate/notifications: dev-master
- illuminate/pagination: dev-master
- illuminate/pipeline: dev-master
- illuminate/process: dev-master
- illuminate/queue: dev-master
- illuminate/redis: dev-master
- illuminate/routing: dev-master
- illuminate/session: dev-master
- illuminate/support: dev-master
- illuminate/testing: dev-master
- illuminate/translation: dev-master
- illuminate/validation: dev-master
- illuminate/view: dev-master
- spatie/once: *
This package is auto-updated.
Last update: 2025-11-18 23:53:58 UTC
README
About This Framework
Note: This is a customized, optimized version of the Laravel framework specifically designed for API-only applications. This is a private framework for internal company use and should not be published publicly.
This framework is based on Laravel but has been optimized for API-only use by:
- Removing unnecessary service providers (View, Broadcasting, Mail, Session, etc.)
- Optimizing dependencies (removed view/mail related packages)
- Streamlining middleware for stateless API requests
- Reducing memory footprint and improving boot time
Key Features (Optimized for APIs):
- Simple, fast routing engine - Perfect for REST APIs
- Powerful dependency injection container
- Multiple back-ends for cache storage
- Database agnostic schema migrations
- Robust background job processing
- Optimized middleware stack for stateless requests
- Reduced memory footprint and faster boot times
What's Different?
- No Blade templates - Removed view engine (not needed for JSON APIs)
- No Session by default - Stateless API design
- No Mail by default - Can be enabled if needed
- Minimal Console support - Artisan commands can be enabled if needed
See API_OPTIMIZATION.md for detailed information about all optimizations.