Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Creating a dashboard (phpworld)
Search
Freek Van der Herten
November 14, 2016
Technology
610
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Creating a dashboard (phpworld)
Freek Van der Herten
November 14, 2016
More Decks by Freek Van der Herten
See All by Freek Van der Herten
Uncharted packages (ode aan de code)
freekmurze
0
75
Uncharted packages (Laravel Live Denmark)
freekmurze
0
270
I shall define this only once
freekmurze
0
490
An Introduction to Snapshot testing
freekmurze
0
590
Event Sourcing In Laravel
freekmurze
0
290
Building a realtime dashboard with Laravel Livewire (PHPKonf)
freekmurze
0
890
A tour behind the scenes of Oh Dear (PHP Benelux)
freekmurze
2
940
A practical look at multitenancy in Laravel
freekmurze
1
410
A practical look at multitenancy in Laravel (Laracon US)
freekmurze
0
800
Other Decks in Technology
See All in Technology
SREの視点で考えるSIEM活用術 〜AWS環境でのセキュリティ強化〜
cscengineer
PRO
0
120
越境するなら専門用語を使うな高校校歌 / If you wanna cross border, you shouldn't use jargon
vtryo
0
150
AIエージェントを最高のパートナーに育てる方法|評価と判断軸を育てる5つのステップ
koichiaoki
1
150
データ_AIの事業の勝敗をわけるもの
nek0128
1
460
JSONataとAWS Step Functionsで目指すRuntimelessな世界
mu7889yoon
0
270
AI de Idea
kawaguti
PRO
2
130
山手線を徒歩で一周してわかった、 位置情報アプリは「足」が最強のデバッガー
hinakko
0
170
現場で役立つ技術負債の効果的な返済方法
masuda220
PRO
9
4.6k
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
12k
2026_devsumi_ozono.pdf
o3
3
530
品質と信頼性を地続きにする
grimoh
2
820
Deployment の 先にある AI Agent 基盤 - kagent vNext、Agent Substrate、Hermes から読み解く Agent Runtime の現在地 / k8s-matsuri-2-ai-agent-platform-amsy810
masayaaoyama
4
670
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.8k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.1k
Navigating Weather and Climate Data
rabernat
0
520
ラッコキーワード サービス紹介資料
rakko
1
4.9M
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
240
YesSQL, Process and Tooling at Scale
rocio
174
15k
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.2k
Are puppies a ranking factor?
jonoalderson
2
3.9k
Ten Tips & Tricks for a 🌱 transition
stuffmc
1
230
Paper Plane (Part 1)
katiecoart
PRO
2
11k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Transcript
Creating a dashboard with Laravel, Vue and Pusher
About me Freek Van der Herten Partner & developer at
SPATIE @freekmurze https://murze.be
Since 2003 Websites, applications and webshops Team 4 developers, 1
manager Specialization Laravel development
OPEN SOURCE SOFTWARE
Open source software ± 80 packages on Packagist + 1
200 000 downloads total, ±200 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
https://spatie.be/opensource
OUR OFFICE
None
None
None
None
None
https://github.com/spatie/dashboard.spatie.be
None
None
None
None
None
None
None
None
None
HIGH LEVEL OVERVIEW
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
Technology stack Laravel Pusher Vue.js
Laravel 5.3 Render the initial page Fetch data from external
API’s (scheduled) Broadcast events when new data has arrived Laravel
spatie/laravel-google-calendar spatie/last-fm-now-playing spatie/packagist-api graham-campbell/github Laravel
Provides full-duplex communication channels over a single TCP connection Transporting
events from server to the browser In realtime Secure Paid service Pusher
WebSockets Transporting events from server to the browser In realtime
Secure Paid service Pusher
Transporting events from server to the browser In realtime Secure
Paid service Pusher Magic
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
DEMO
Grid system The clock tile The Packagist tile Topics
There will be some live coding We’ll use
an internet connection
DISPLAYING ON A TV
Raspberry Pi 2
Raspberry Pi 2 Powered by the USB port from the
TV Uses Raspbian Jessie Boots into Chromium 51 in fullscreen mode Setup
TRY IT OUT YOURSELF
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
ROUND UP
https://laravel.com https://pusher.com https://vuejs.com https://vuecasts.com Interesting links
https://www.geckoboard.com/ http://www.cyfe.com/ https://razorflow.com/ http://dashing.io/ Built by Shopify, Ruby. No
longer maintained, but works great https://panic.com/statusboard/ Alternatives
Credits Willem Van Bockstal @willemvbockstal Looks + grid system Sebastian
De Deyne @sebdedeyne Scrutinising + JS wizardry
QUESTIONS?
Thank you! https://speakerdeck.com/freekmurze/creating-a-dashboard-phpworld https://joind.in/talk/19484 http://lanyrd.com/2016/phpworld/sfkfry/ https://spatie.be/opensource https://murze.be https://murze.be/newsletter
2016 2016