authbucket/push-php
PHP library for sending push notifications to mobile devices. Includes a Silex AuthBucketPushServiceProvider for demos/tests, with configurable models and model managers. Install via Composer (authbucket/push-php) and extend for Symfony2/Drupal wrappers.
Validator, Security, Monolog) and integrates natively with Silex, making it a strong fit for Laravel applications that use Lumen (Silex-inspired) or adopt Symfony components via bridges (e.g., symfony/http-foundation). For traditional Laravel, compatibility requires abstraction layers (e.g., Laravel’s Illuminate\Contracts or custom facades).laravel-notification-channels/fcm, spatie/laravel-ignition for debugging), which may reduce perceived value.AuthBucketPushServiceProvider pattern is modular but assumes dependency injection (DI) containers like Silex’s, requiring Laravel-specific DI container adaptation (e.g., via Illuminate\Contracts\Container\Container).ServiceProvider or Facades). Requires manual wiring or a wrapper package.App\Providers\ServiceProvider to bind the package’s services to the container.laravel/symfony-bridge for shared components (e.g., Validator, Security).authbucket_push.model_manager.factory to integrate with their ORM.AuthBucketOAuth2ServiceProvider), which may conflict with Laravel’s built-in auth (e.g., Illuminate\Auth). Custom middleware or hybrid auth systems would be needed.laravel-notification-channels or spatie/laravel-push-notification?bus:queue) need to be integrated for high-volume pushes?Route::post()) replace the Silex-based authbucket_push.push_controller without breaking functionality?ServiceProvider with Laravel’s Illuminate\Support\ServiceProvider.Route facade or api.php/web.php for push endpoints.register() and boot() methods.symfony/http-foundation for request/response handling.Validator facade to replace Symfony’s Validator if needed.authbucket_push.model_manager.factory to use Eloquent or Doctrine repositories for persistent token storage.$this->app->bind(
'authbucket_push.model_manager.factory',
function () {
return new \App\Repositories\PushTokenRepository();
}
);
User model.Validator, Auth, and Queue systems.ServiceProvider to bind the package’s services.config/services.php).Route::post('/push', [PushController::class, 'handle'])).PushSent events) or queues for async processing.PHPUnit to cover edge cases (e.g., token expiration, auth failures).php artisan queue:work).ServiceProvider model.Log facade. Use Monolog directly or alias it.laravel-authbucket-push) to abstract Silex-specific code.Macro or alias features to unify APIs (e.g., AuthBucketPush::send()).README.md or a wiki.Sentry or Log to track push failures and integrate with AuthBucket’s debug endpoints.spatie/laravel-circuitbreaker) for push failures.laravel-cache).How can I help you explore Laravel packages today?