hamza-wakrim/api-framework

Optimized Laravel Framework for API-only applications - Lightweight and fast.

Maintainers

👁 HamzaWakrim

Package info

github.com/Hamza-Wakrim/api-framework

pkg:composer/hamza-wakrim/api-framework

Statistics

Installs: 16

Dependents: 1

Suggesters: 0

Stars: 1

Open Issues: 0

dev-master / 1.0.x-dev 2025-11-20 12:17 UTC

Requires

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).

Conflicts

Replaces

MIT 362f97a906877280565551d0be7564bf235dd92d

  • Hamza Wakrim <wakrimhamza90.woop@gmail.com>

frameworkrestapilightweightlaravel

This package is auto-updated.

Last update: 2026-06-20 13:49:18 UTC


README

👁 Build Status
👁 Total Downloads
👁 Latest Stable Version
👁 License

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):

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.