Pro Yearly is on sale from $80 to $50! »

Dashboard (fosdem)

Dashboard (fosdem)

A1b4b398630bbd32b77a82cbc37fae9a?s=128

Freek Van der Herten

February 04, 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 ± 90 packages on Packagist ± 1

    900 000 downloads total, ±270 000 downloads a month A lot of benefits: learning, forced to write documentation and tests, showing the quality of our work, eating our own dogfood
  8. https://spatie.be/opensource

  9. http://github-awards.com/users?type=world&language=php Open source software

  10. OUR OFFICE

  11. None
  12. None
  13. None
  14. None
  15. None
  16. https://github.com/spatie/dashboard.spatie.be

  17. None
  18. None
  19. None
  20. None
  21. None
  22. None
  23. None
  24. None
  25. None
  26. None
  27. HIGH LEVEL OVERVIEW

  28. 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
  29. Technology stack Laravel Pusher Vue.js

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

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

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

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

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

    Paid service Pusher Magic
  35. Lot of ♥ from the Laravel community Easy to learn

    Each tile is a component Listen for incoming events Update the tile Vue 2 Vue.js
  36. None
  37. DEMO

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

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


    an internet connection
  40. DISPLAYING ON A TV

  41. Raspberry Pi 2

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

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

  44. 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

  45. ROUND UP

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

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

  48. 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
  49. QUESTIONS?

  50. Thank you! https://speakerdeck.com/freekmurze/dashboard-fosdem https://spatie.be/opensource https://murze.be https://murze.be/newsletter