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
1
330
Handling media in a Laravel app (Laracon eu)
Freek Van der Herten
August 30, 2018
Tweet
Share
More Decks by Freek Van der Herten
See All by Freek Van der Herten
I shall define this only once
freekmurze
0
340
An Introduction to Snapshot testing
freekmurze
0
390
Event Sourcing In Laravel
freekmurze
0
200
Building a realtime dashboard with Laravel Livewire (PHPKonf)
freekmurze
0
690
A tour behind the scenes of Oh Dear (PHP Benelux)
freekmurze
2
730
A practical look at multitenancy in Laravel
freekmurze
1
290
A practical look at multitenancy in Laravel (Laracon US)
freekmurze
0
640
Highlights Flare codebase (Laracon online)
freekmurze
0
370
Introducing Mailcoach
freekmurze
1
550
Other Decks in Programming
See All in Programming
Composing an API the *right* way (Droidcon Berlin 2024)
zsmb
1
450
大規模マルチテナントを解決するYugabyteDBという選択肢
nnaka2992
1
250
Product Management LT会_クアンド新家
shinshin
0
210
みんなのオブザーバビリティプラットフォームを作ってるんだがパフォーマンスがやばい #mackerelio #srenext
ne_sachirou
0
370
ドメイン駆動設計の実践
masuda220
PRO
17
5.2k
AWSでゲームサーバーを運用! Amazon GameLiftのお話
iriikeita
0
200
CSC307 Lecture 06
javiergs
PRO
0
360
Android開発者のための Kotlin Multiplatform入門
ntaro
0
190
Temporalを取り巻く仕様を整理する
sajikix
0
110
Polarsの成長: v0.14からv1.0までの変遷と今後の展望
zerebom
1
350
Clean Architecture by TypeScript & NestJS
ryounasso
0
150
DMMプラットフォームにおけるTiDBの導入から運用まで
pospome
7
3k
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
71
8.8k
How to Think Like a Performance Engineer
csswizardry
4
590
Git: the NoSQL Database
bkeepers
PRO
423
64k
The Invisible Customer
myddelton
117
13k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
360
22k
How to Ace a Technical Interview
jacobian
274
23k
10 Git Anti Patterns You Should be Aware of
lemiorhan
652
58k
How To Stay Up To Date on Web Technology
chriscoyier
784
250k
The Brand Is Dead. Long Live the Brand.
mthomps
52
36k
Build The Right Thing And Hit Your Dates
maggiecrowley
28
2.2k
A Modern Web Designer's Workflow
chriscoyier
689
190k
A better future with KSS
kneath
231
17k
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