Giter VIP home page Giter VIP logo

middleman-imageoptim's Introduction

Middleman ImageOptim Extension

Serving big images is for numb-skulls! Compress and optimise your imagery during middleman build by running image_optim over it. Aww yiss!

Build Status Code Climate Gem Version Dependency Status


Installation

Go set up the image_optim external utilities, then;

Middleman < 4.0

gem 'middleman-imageoptim'

Middleman ≥ 4.0

gem "middleman-imageoptim", :git => "https://github.com/plasticine/middleman-imageoptim", :branch => "master"

Usage

activate :imageoptim

You can also configure the extension in the usual fashion, by passing a block to :activate Below is the default configuration showing all available options;

activate :imageoptim do |options|
  # Use a build manifest to prevent re-compressing images between builds
  options.manifest = true

  # Silence problematic image_optim workers
  options.skip_missing_workers = true

  # Cause image_optim to be in shouty-mode
  options.verbose = false

  # Setting these to true or nil will let options determine them (recommended)
  options.nice = true
  options.threads = true

  # Image extensions to attempt to compress
  options.image_extensions = %w(.png .jpg .gif .svg)

  # Compressor worker options, individual optimisers can be disabled by passing
  # false instead of a hash
  options.advpng    = { :level => 4 }
  options.gifsicle  = { :interlace => false }
  options.jpegoptim = { :strip => ['all'], :max_quality => 100 }
  options.jpegtran  = { :copy_chunks => false, :progressive => true, :jpegrescan => true }
  options.optipng   = { :level => 6, :interlace => false }
  options.pngcrush  = { :chunks => ['alla'], :fix => false, :brute => false }
  options.pngout    = { :copy_chunks => false, :strategy => 0 }
  options.svgo      = {}
end

Changelog

0.2.1
  • Minor bugfix for 3.3.9 support.
0.2.0
  • Big cleanup to codebase.
  • More tests.
  • Caching between builds using a manifest file to skip over already-compressed assets (thanks for your work on this @jagthedrummer).
  • Updates image_optim gem to latest version (0.20.2).
  • Adds dependency on image_optim_pack to ensure that binaries are available.
0.1.4
  • Respect plugin ordering in config.rb (thanks @jeffutter) #8.
0.1.3
  • Fix missing license in gemspec.
0.1.2
  • Minor bugfix.
0.1.1
  • Remove legacy requirement for padrino.
0.1.0
  • Complete refactor and clean-up.
  • Introduced an options class. options now work (lol, yay!), thanks @andrew-aladev for your help there.
  • Change of extension activation name from :image_optim to :imageoptim for consistency with internal naming.

middleman-imageoptim's People

Contributors

carles avatar jagthedrummer avatar jeffutter avatar katsuma avatar kieranj avatar nybblr avatar plasticine avatar twolfe2 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.