Skip to content

bemurphy/lorem-image-ware

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LoremImageWare

Rack middleware for proxying requests to lorempixel.com

This mounts routing in your Rack stack so that paths like /lorem/image/400/200 will serve a 400x200 random image from lorempixel.com.

The middleware is primarily useful because it will cache responses from lorempixel so that after a few page loads, images should load much faster. Without such local caching you will be stuck hammering their server on every page load, and waiting a few seconds for images to fill in.

It is recommended to only load the middleware in development environments.

Installation

Add this line to your application's Gemfile:

gem 'lorem-image-ware'

And then execute:

$ bundle

Or install it yourself as:

$ gem install lorem-image-ware

Usage

Mount in your app stack like:

use LoremImageWare::Middleware

If you wish to serve off a directory other than the default /lorem, pass the :root option:

use LoremImageWare::Middleware, :root => "/random_images"

There is a small Helpers module you can include for generating lorem image tags for you. For example in Sinatra classical:

helpers LoremImageWare::Helpers

# In a view
lorem_image_tag(:height => 400, :width => 200, :tag => "sports", :class => "some-class")

The helper will add a class of lorem-image to tags for you, as well as populate the dimensions and set inline height and width styling on the image.

Todo

Use cache-control and ETag support for browser caching

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

About

rack middleware for proxying requests to lorempixel.com

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages