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

This package is auto-updated.

Last update: 2024-04-14 12:42:53 UTC


README

Latest Version on Packagist Build Status StyleCI Total Downloads

Allows rendering of a calendar in blade with your git contributions.

An example of what it can look like: Screenshot

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.

Credits