bjthecod3r / laravel-cloudflare-stream
A Laravel package for Cloudflare Stream.
Package info
github.com/BJTheCod3r/laravel-cloudflare-stream
pkg:composer/bjthecod3r/laravel-cloudflare-stream
Requires
- php: ^8.1
- guzzlehttp/guzzle: ^7.0
- illuminate/support: ^10.0 || ^11.0 || ^12.0 || ^13.0
Requires (Dev)
- mockery/mockery: ^1.6.10
- orchestra/testbench: ^8.0 || ^9.0 || ^10.0 || ^11.0
- phpunit/phpunit: ^10.5 || ^11.5 || ^12.0 || ^13.0
This package is auto-updated.
Last update: 2026-04-13 06:01:25 UTC
README
Laravel Cloudflare Stream
A Laravel Package for working with Cloudflare Stream seamlessly
Supports Laravel 10, 11, 12, and 13.
Installation
Run
composer require bjthecod3r/laravel-cloudflare-stream
Configuration
You may publish the configuration file using this command:
php artisan vendor:publish --provider="Bjthecod3r\CloudflareStream\CloudflareStreamServiceProvider"
A configuration file named cloudflare-stream with some defaults and required properties will be placed in your config directory.
Usage
Open your .env file and add the following variables, remember to substitute the actual values
CLOUDFLARE_API_TOKEN=xxxxxxxxxxxx CLOUDFLARE_ACCOUNT_ID=xxxxxxxxxxxxxxxxx CLOUDFLARE_API_BASE_URL=https://api.cloudflare.com/client/v4/accounts CLOUDFLARE_KEY_ID=xxxxxxxxxxxxxxx
Using the package is pretty straight forward, you can make use of the class like you would do any in Laravel. There is also support for facade.
use Bjthecod3r\CloudflareStream\CloudflareStream; use Bjthecod3r\CloudflareStream\Facades\CloudflareStream as CloudflareStreamFacade; class StreamService { public function fetchStream(string $id, CloudflareStream $cloudflareStream) { dd($cloudflareStream->fetchVideo($id)); } public function fetchVideo(string $id): array { return CloudflareStreamFacade::fetchVideo($id); } }
Note
This package currently covers my current usage of cloudflare stream, although, in the next couple of weeks I plan to expand its features. However, if there is a need for a particular feature, feel free to reach out to me via fabulousbj@hotmail.com, and I'll gladly attend to it.
Todo
- Improve tests
- Add the remaining useful features available on Cloudflare Stream
Contributing
Please feel free to fork this package and contribute by submitting a pull request to enhance the functionalities.
Releases
GitHub releases are managed with Google's release-please action.
- Merge conventional commits such as
fix:,feat:, orfeat!:intomain. release-pleasewill open or update a Release PR with the next version and changelog changes.- Merging that Release PR creates the GitHub release and the next
v*tag automatically. - If you want other workflows to run on Release PRs or release tags, add a
RELEASE_PLEASE_TOKENsecret with a PAT; otherwise the workflow falls back toGITHUB_TOKEN. - In GitHub repo settings, enable
Settings > Actions > General > Allow GitHub Actions to create and approve pull requests.
License
The MIT License (MIT). Please see License File for more information.
