Imbo
Imbo is an application that can add/get/delete/transform images using a RESTful interface.
The main idea behind Imbo is to have a place to store high quality original images and to use the REST interface to fetch variations of those images. Imbo will resize, rotate, crop (amongst many other transformations) on the fly so you won’t have to store all the different variations.
Imbo is written in PHP, licensed with the MIT license, and hosted on GitHub. If you find any issues or missing features please add an issue in the Imbo issue tracker.
Installation guide
- Requirements
- Installation
- Upgrading Imbo
- Configuration
- Database configuration -
database - Storage configuration -
storage - Access control -
accessControl - Image identifier generation -
imageIdentifierGenerator - HTTP cache headers -
httpCacheHeaders - Content negotiation for images -
contentNegotiateImages - Rethrow any non-handled general exceptions -
rethrowFinalException - Trusted proxies -
trustedProxies - Authentication protocol -
authentication - Event listeners -
eventListeners - Event listener initializers -
eventListenerInitializers - Image transformation presets -
transformationPresets - Redirect the index route -
indexRedirect - Input loaders -
inputLoaders - Output converters -
outputConverters - Optimizations -
optimizations
- Database configuration -
- Customize your Imbo installation with event listeners
- Command line tool
End user guide
- Imbo’s API
- Resources/endpoints
- Index resource -
/ - Stats resource -
/stats - Status resource -
/status - Global short URL resource -
/s/<id> - User resource -
/users/<user> - Images resource -
/users/<user>/images - Image resource -
/users/<user>/images/<image> - Short URLs resource -
/users/<user>/images/<image>/shorturls - Short URL resource -
/users/<user>/images/<image>/shorturls/<id> - Metadata resource -
/users/<user>/images/<image>/metadata - Global images resource -
/images - Public key resource -
/keys/<publicKey> - Groups resource -
/groups - Group resource -
/groups/<groupName> - Access rules resource -
/keys/<publicKey>/access - Access rule resource -
/keys/<publicKey>/access/<ruleId>
- Index resource -
- Access tokens
- Signing write requests
- Supported content types
- Cache headers
- Errors
- Resources/endpoints
- Transforming images on the fly
- Auto rotate image based on EXIF data -
t[]=autoRotate - Blur the image -
t[]=blur - Add an image border -
t[]=border - Expand the image canvas -
t[]=canvas - Clip the image -
t[]=clip - Compress the image -
t[]=compress - Change image contrast -
t[]=contrast - Convert the image type -
.jpg/.gif/.png - Crop the image -
t[]=crop - Make a gray scaled image -
t[]=desaturate - Draw points of interest -
t[]=drawPois - Make a mirror image -
t[]=flipHorizontally - Flip the image upside down -
t[]=flipVertically - Adjust RGB/CMYK levels in an image -
t[]=level - Generate a histogram of the image -
t[]=histogram - Apply an ICC color profile -
t[]=icc - Adjust levels of the image -
t[]=level - Enforce a max size of an image -
t[]=maxSize - Modulate the image -
t[]=modulate - Make a progressive image -
t[]=progressive - Resize the image -
t[]=resize - Rotate the image -
t[]=rotate - Apply a sepia color tone -
t[]=sepia - Sharpen the image -
t[]=sharpen - Smart size the image -
t[]=smartSize - Strip image properties and comments -
t[]=strip - Create a thumbnail of the image -
t[]=thumbnail - Create a vertical mirror image -
t[]=transpose - Create a horizontal mirror image -
t[]=transverse - Add a vignette to the image -
t[]=vignette - Add a watermark to the image -
t[]=watermark
- Auto rotate image based on EXIF data -