spatie/laravel-dashboard-coffee-tile

Coffee statistics for the Spatie office

3.0.0 2023-10-03 11:51 UTC

This package is auto-updated.

Last update: 2024-04-03 12:53:32 UTC


README

Latest Version on Packagist Total Downloads

Over at Spatie we drink a lot of coffee. How much coffee? We had no idea until we created this dashboard tile.

Using a separate Raspberry Pi running this Python script we can listen to the sounds our office coffee machine makes and update the dashboard tile with the latest statistics.

This tile can be used on the Laravel Dashboard.

image

Support us

68747470733a2f2f6769746875622d6164732e73332e65752d63656e7472616c2d312e616d617a6f6e6177732e636f6d2f6c61726176656c2d64617368626f6172642d736b656c65746f6e2d74696c652e6a70673f743d31

We invest a lot of resources into creating best in class open source packages. You can support us by buying one of our paid products.

We highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using. You'll find our address on our contact page. We publish all received postcards on our virtual postcard wall.

Installation and usage

You can install the package via composer:

composer require spatie/laravel-dashboard-coffee-tile

You will also need to publish and run the migrations:

php artisan vendor:publish --provider="Spatie\CoffeeTile\CoffeeTileServiceProvider" --tag="coffee-tile-migrations"
php artisan migrate

In your dashboard view you can add the livewire:coffee-tile component. The total-offset will offset the total amount of brewed coffees and is optional.

<x-dashboard>
    <livewire:coffee-tile position="e7:e16" total-offset="1337" />
</x-dashboard>

Finally, coffees are counted by POST requests to the included CoffeeController. Add the following route to your routes/api.php file. Endpoint authentication is up to you. Make sure to add a auth middleware to this route if you feel it's necessary.

Route::post('/coffee', \Spatie\CoffeeTile\Http\CoffeeController::class);

Additionally, you'll need something to hook up your coffee machine to this coffee endpoint. Your machine might have a very cool web UI that can send a webhook to the dashboard or you might need to get creative with an Arduino or Raspberry Pi.

Our set-up uses a Raspberry Pi to listen to the coffee machine noises to determine when a cup is brewing. This is a separate project that can be found here.

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email alex@spatie.be instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.