Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Handling media in a Laravel app (Laracon eu)
Search
Freek Van der Herten
August 30, 2018
Programming
400
1
Share
Handling media in a Laravel app (Laracon eu)
Freek Van der Herten
August 30, 2018
More Decks by Freek Van der Herten
See All by Freek Van der Herten
Uncharted packages (ode aan de code)
freekmurze
0
62
Uncharted packages (Laravel Live Denmark)
freekmurze
0
260
I shall define this only once
freekmurze
0
480
An Introduction to Snapshot testing
freekmurze
0
560
Event Sourcing In Laravel
freekmurze
0
280
Building a realtime dashboard with Laravel Livewire (PHPKonf)
freekmurze
0
870
A tour behind the scenes of Oh Dear (PHP Benelux)
freekmurze
2
910
A practical look at multitenancy in Laravel
freekmurze
1
400
A practical look at multitenancy in Laravel (Laracon US)
freekmurze
0
780
Other Decks in Programming
See All in Programming
クラウドネイティブなエンジニアに向ける Raycastの魅力と実際の活用事例
nealle
2
250
PHPer、Cloudflare に引っ越す
suguruooki
1
140
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
370
PicoRuby for IoT: Connecting to the Cloud with MQTT
yuuu
2
770
AgentCore Optimizationを始めよう!
licux
3
220
過去のレビュー知見をSkillsで資産化した話
pkshadeck
PRO
1
1.6k
[RubyKaigi 2026] Require Hooks
palkan
1
300
決定論 vs 確率論:Gemini 3 FlashとTF-IDFを組み合わせた「法規判定エンジン」の構築
shukob
0
160
10 Tips of AWS ~Gen AI on AWS~
licux
5
540
Spec-Driven Development with AI Agents (Workshop, May 2026)
antonarhipov
3
330
Building on Bluesky's AT Protocol with Ruby
mackuba
0
110
AI時代になぜ書くのか
mutsumix
0
290
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
Done Done
chrislema
186
16k
Test your architecture with Archunit
thirion
1
2.2k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
210
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.8k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.1k
Documentation Writing (for coders)
carmenintech
77
5.3k
Being A Developer After 40
akosma
91
590k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Code Review Best Practice
trishagee
74
20k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.8k
Transcript
Handling media in a Laravel app
Freek Van der Herten Partner & developer at SPATIE @freekmurze
https://spatie.be https://ohdearapp.com https://fullstackeurope.com https://murze.be
Open source software
https://spatie.be/open-source
Some statistics ± 200 public repositories on GitHub August 2016:
± 800 000 downloads August 2017: ± 5 000 000 downloads August 2018: ± 17 000 000 downloads ± 1 250 000 downloads a month https://murze.be/the-story-behind-our-open-source-efforts
Postcardware
Spatie Samberstraat 69D 2060 Antwerp Belgium
https://spatie.be/open-source/postcards
Let's talk about media
The problem User uploaded content Where to store it all?
How to retrieve it? How to optimize images?
The problem Boring code to write Need the same things
in every project Write it slightly different in each project
Laravel Medialibrary
Laravel Medialibrary Associate files with Eloquent models Can group media
into collections Image conversions Uses multiple filesystems
Laravel Medialibrary Optimize converted images Custom image generators Customize directory
structure Custom attributes
https://docs.spatie.be/laravel-medialibrary
None
Demo
Wrapping up
Resources https://github.com/spatie/medialibrary-demo-laracon https://docs.spatie.be/laravel-medialibrary/v7 https://www.youtube.com/watch?v=4lq_6JLR2H8 https://github.com/spatie/laravel-medialibrary
Future plans Vue components Uploads Nova Tool
Release Q4 2018 - Q1 2019
Teamwork Sebastian De Deyne @sebdedeyne Willem Van Bockstal @willemvbockstal
Alex Vanderbist @alexvanderbist Brent Roose @brendt_gd
Freek Van der Herten Partner & developer at SPATIE @freekmurze
https://spatie.be https://ohdearapp.com https://fullstackeurope.com https://murze.be