Comments (8)
Hey @cdowdy,
Look at what's happening in #29 and bolt/bolt#5768
Adding a quality per size would surely help with this, already. :-)
What i'd really like eventually is this: https://github.com/jwagner/smartcrop.js/
from thumbs.
@bobdenotter huh I was so in my own head and writing this RFC I missed the other issue and pull haha. Thanks for the heads up!
from thumbs.
What do you guys think about Imagine library? Last time I checked it looked like it wouldn't work with our filesystem abstraction, but looking again, it looks fine. This would give a lot more flexibility at a PHP level and could open up to Imagick / Gmagick extensions, not just GD. This still would need a twig / yaml interface for Bolt usage, but at least we would have less code to maintain.
from thumbs.
@CarsonF I'm all for in. In fact I was going to use liip imagine in all my bolt projects because it allows offloading to a CDN (s3 etc), no ddos/server crash from 1000's of files being allowed to be created threat since hmacs are used for URLs
I brought up liip imagine once before since it has all the flysytem, yaml, twig and cache resolvers that work with symfony. It requires on install the framework bundle which if installed into a symfony project you could skip that since liip imagine uses it for http-foundation and I think security (csrf) but that was shot down because of the framework bundle include. I also brought up using the PHP leagues glide library but that uses query strings so that was a no go.
from thumbs.
no ddos/server crash from 1000's of files being allowed to be created threat since hmacs are used for URLs
Can you link me to that?
offloading to a CDN (s3 etc)
I'm working on this right now for GMO. Want to get this as easy as possible for others to implement. May write a guide once I get the kinks hammered out.
I brought up liip imagine once before since it has all the flysytem, yaml, twig and cache resolvers that work with symfony.
I looked at the bundle too. I think it just did a little more than we were comfortable with. Not to mention the framework bundle part.
I'm open for a rewrite at this point. Alot of this just seems like integration into bolt core, which makes me wonder if it really should be a separate library or not.
from thumbs.
@CarsonF link for liip imagine signer?
If so here it is https://github.com/liip/LiipImagineBundle/blob/1.0/Imagine/Cache/Signer.php
from thumbs.
Something like that could probably be implemented here too.
from thumbs.
Gonna close this. I created an extension using Glide (it uses the intervention image library) that signs URLs to prevent server floods etc, variable quality per image, crop direction and focal points, image filters, watermarks, image corrections, can use imagemagick and probably eventually if I get time use S3 and other cdns to offload/store ones images
from thumbs.
Related Issues (15)
- urldecode HOT 1
- $app->pass() does not exist HOT 1
- [RFC] Add support for retina images. HOT 1
- Passthrough when file is SVG
- bolt thumbnail setting to save files (static) is ignored HOT 1
- Non existing method pass() in 2.x provider HOT 2
- Mount point in path HOT 8
- Thumbnails Error when running inside Docker container HOT 7
- Throw exception if GD isn't installed correctly HOT 2
- [3.3] "not found" image throws an exception HOT 6
- Tests on `master` are broken. HOT 3
- ThumbnailResponderTest incompatible with PHP 5.3 HOT 1
- Custom thumbnail paths HOT 5
- Preserve gif animation when creating thumbs HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from thumbs.