owenvoke / laravel-dashboard-google-fit-tile
A tile for Laravel Dashboard that displays statistics from Google Fit
Fund package maintenance!
owenvoke
offset.earth/owenvoke?gift-trees
Requires
- php: ^7.4
- ext-json: *
- google/apiclient: ^2.4
- spatie/laravel-dashboard: ^2.0
Requires (Dev)
- phpunit/phpunit: ^9.3
This package is auto-updated.
Last update: 2024-10-05 17:15:54 UTC
README
A tile for Laravel Dashboard that displays statistics from Google Fit
Install
Via Composer
$ composer require owenvoke/laravel-dashboard-google-fit-tile
Usage
In the dashboard
config file, you must add this configuration in the tiles
key.
// in config/dashboard.php return [ // ... 'tiles' => [ 'google_fit' => [ 'id' => env('GOOGLE_FIT_ID'), 'secret' => env('GOOGLE_FIT_SECRET'), ], ], ];
In app\Console\Kernel.php
you should schedule the OwenVoke\GoogleFitTile\Commands\RefreshGoogleFitTokenCommand
to run every 30
minutes.
If you want step count data, set the OwenVoke\GoogleFitTile\Commands\FetchGoogleFitStepCountCommand
to run every x
minutes as well.
If you want sleep data, set the OwenVoke\GoogleFitTile\Commands\FetchGoogleFitSleepCommand
to run every x
minutes as well.
// in app/console/Kernel.php protected function schedule(Schedule $schedule) { $schedule->command(\OwenVoke\GoogleFitTile\Commands\RefreshGoogleFitTokenCommand::class)->everyThirtyMinutes(); // Data fetching commands $schedule->command(\OwenVoke\GoogleFitTile\Commands\FetchGoogleFitStepCountCommand::class)->everyTenMinutes(); $schedule->command(\OwenVoke\GoogleFitTile\Commands\FetchGoogleFitSleepCommand::class)->everyTenMinutes(); }
In your dashboard view you use the livewire:google-fit-tile
component.
<x-dashboard> <livewire:google-fit-tile position="a1" /> </x-dashboard>
Generate Google Fit credentials
- Create a Google project and generate API Credentials
- Click the "Authorize APIs" button on Google's OAuth Playground
- Click the "Exchange authorization code for tokens" button
- Copy the JSON (with
access_token
/refresh_token
) from the bottom right panel - Add this to a JSON file in
storage/app/google/fit-credentials.json
- Run the
artisan dashboard:refresh-google-fit-token
command manually to validate the configuration
Change log
Please see CHANGELOG for more information on what has changed recently.
Testing
$ composer test
Contributing
Please see CONTRIBUTING for details.
Security
If you discover any security related issues, please email security@voke.dev instead of using the issue tracker.
Credits
License
The MIT License (MIT). Please see License File for more information.
Treeware
You're free to use this package, but if it makes it to your production environment you are required to buy the world a tree.
It’s now common knowledge that one of the best tools to tackle the climate crisis and keep our temperatures from rising above 1.5C is to plant trees. If you support this package and contribute to the Treeware forest you’ll be creating employment for local families and restoring wildlife habitats.
You can buy trees here.
Read more about Treeware at treeware.earth.