Dashboard (PHP Limburg)

Dashboard (PHP Limburg)

A1b4b398630bbd32b77a82cbc37fae9a?s=128

Freek Van der Herten

June 20, 2017
Tweet

Transcript

  1. Creating a dashboard using Laravel, Vue and Pusher

  2. About me Freek Van der Herten Partner & developer at

    SPATIE @freekmurze https://murze.be
  3. About me phpantwerp.be Dries Vints @driesvints Frederick Vanbrabant @TheEdonian

  4. Since 2003 Websites, applications and webshops Team 4 developers, 1

    manager Specialization Laravel development
  5. VACATURE FRONT-END DEVELOPER https://spatie.be/en/front-end-vacancy

  6. OPEN SOURCE SOFTWARE

  7. Open source software ± 120 packages on Packagist ± 4

    500 000 downloads total, ±450 000 downloads a month A lot of benefits: learning, writing quality documentation and tests, showing the quality of our work, eating our own dogfood
  8. http://github-awards.com/users?type=world&language=php Open source software

  9. https://spatie.be/opensource

  10. WE ❤ POSTCARDS

  11. Spatie
 Samberstraat 69D 2060 Antwerp
 Belgium

  12. None
  13. None
  14. None
  15. None
  16. None
  17. None
  18. None
  19. None
  20. None
  21. None
  22. None
  23. https://github.com/spatie/dashboard.spatie.be

  24. HIGH LEVEL OVERVIEW

  25. The dashboard is a single HTML page Displayed by a

    full screen browser Without full page reload Each tile wil be updated by JavaScript Each tile has it’s own update frequency In short
  26. Technology stack Laravel Pusher Vue.js

  27. Laravel 5.4 Render the initial page Fetch data from external

    API’s (scheduled) Broadcast events when new data has arrived Laravel
  28. spatie/laravel-twitter-streaming-api spatie/laravel-google-calendar spatie/last-fm-now-playing spatie/packagist-api knplabs/github-api Laravel

  29. Provides full-duplex communication channels over a single TCP connection Transporting

    events from server to the browser In realtime Secure Paid service Pusher
  30. WebSockets Transporting events from server to the browser In realtime

    Secure Paid service Pusher
  31. Transporting events from server to the browser In realtime Secure

    Paid service Pusher Magic
  32. Easy to learn JS Framework Each tile is a component

    Listen for incoming events with Laravel Echo Update the tile Vue.js
  33. None
  34. DEMO

  35. Grid system The clock tile The Packagist tile The Twitter

    tile Topics
  36. There will be 
 some live coding We’ll use 


    an internet connection
  37. DISPLAYING ON A TV

  38. Raspberry Pi 2

  39. Raspberry Pi 2 Powered by the USB port from the

    TV Uses Raspbian Jessie Boots into Chromium 56 in fullscreen mode Setup
  40. TRY IT OUT YOURSELF

  41. Source code https://github.com/spatie/dashboard.spatie.be Blog posts https://murze.be/2016/06/building-dashboard-using-laravel-vue https://murze.be/2016/06/grid-layout-dashboard/ Documentation

  42. ROUND UP

  43. Credits Willem Van Bockstal @willemvbockstal Looks + grid system Sebastian

    De Deyne @sebdedeyne Scrutinising + JS wizardry
  44. https://laravel.com https://pusher.com https://vuejs.com https://vuecasts.com Interesting links

  45. https://www.geckoboard.com/ http://www.cyfe.com/ https://razorflow.com/ http://dashing.io/ 
 Built by Shopify, Ruby. No

    longer maintained, but works great Alternatives
  46. QUESTIONS?

  47. Thank you! https://speakerdeck.com/freekmurze/dashboard-php-limburg https://spatie.be/opensource https://murze.be https://murze.be/newsletter