m50 / laravel-git-contributions-calendar
A Blade directive to display a contribution calendar, as found on Github/Gitlab.
v0.1.1
2019-10-28 15:46 UTC
Requires
- php: ^7.2
- guzzlehttp/guzzle: ^6.3
- illuminate/bus: ~5.8|^6.0
- illuminate/contracts: ~5.8|^6.0
- illuminate/foundation: ~5.8|^6.0
- illuminate/queue: ~5.8|^6.0
- illuminate/support: ~5.8|^6.0
- nesbot/carbon: ^2.0
Requires (Dev)
- orchestra/testbench: ~3.8.0|^4.0
- phpunit/phpunit: ^8.0
README
Allows rendering of a calendar in blade with your git contributions.
An example of what it can look like:
Install
First install the package and publish the files:
composer install m50/laravel-git-contributions-calendar php artisan vendor:publish
Add the Service Provider:
m50\GitCalendar\Providers\ContribCalendarServiceProvider::class,
Usage
You will want to rely on caching, because of the roundtrip time for the requests. It's important to add the schedules job:
$schedule->job(new CacheEventData(app(GithubApi::class))) ->daily();
Then it's also recommended that where you are pulling the data (your controller for example) to kick off a new queue job to re-cache the data:
$data = Cache::get( 'git-contrib-data', function () { $this->dispatch(new CacheEventData(app(GithubApi::class))); return new GitData(); } ); if (app()->environment('Production')) { $this->dispatch(new CacheEventData(app(GithubApi::class))); }
Note: The default view relies on TailwindCSS.