atomicptr / flysystem-github-storage
A Github based filesystem for Flysystem.
v0.1.4
2024-09-19 15:47 UTC
Requires
- php: ^8.2
- guzzlehttp/guzzle: ^7
- knplabs/github-api: ^3.0
- league/flysystem: ^3
Requires (Dev)
- laravel/pint: ^1.14
- league/flysystem-adapter-test-utilities: ^3.21
- pestphp/pest: ^2.34
README
A GitHub based filesystem for Flysystem, powered by php-github-api.
Note: Keep in mind that GitHub has a rate limit, so if you need a lot of file operations you might need something else.
Inspired by @RoyVoetman/flysystem-gitlab-storage.
Usage
<?php use Atomicptr\FlysystemGithub\GithubAdapter; use Atomicptr\FlysystemGithub\Credentials; use Atomicptr\FlysystemGithub\Committer; use League\Flysystem\Filesystem; $adapter = new GithubAdapter( "username", "repository", branch: "master", credentials: Credentials::fromToken("token..."), committer: new Committer("Peter Developer", "peter@developer.tld"), ); $filesystem = new Filesystem($adapter); // see http://flysystem.thephpleague.com/api/ for full list of available functionality
Laravel
Check out my other repository: atomicptr/laravel-github-storage
License
MIT