jekyll-webp 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 80ba6286b2216fafd1e971367ba4b31ac867d03c
4
+ data.tar.gz: e2df650ac6d08f7801ec9bb23fa1e62011161a55
5
+ SHA512:
6
+ metadata.gz: baa7c2aaacdd3e6715087566dc1136adccb928bf5b914194fb88bdda4160393c1d91bd57489f4b3c5e6c3f182aa0851323cb6a3f3dc33403ffda59fd719de162
7
+ data.tar.gz: d962aa0179ac79b319555f498eedb7b7c432f051d8490ba6f940d5cc88cc480a0f40be48bb0108ea4d548881b6c7c132e10db292966b4a4ef588a48cf8188077
@@ -0,0 +1,74 @@
1
+ # Contributor Covenant Code of Conduct
2
+
3
+ ## Our Pledge
4
+
5
+ In the interest of fostering an open and welcoming environment, we as
6
+ contributors and maintainers pledge to making participation in our project and
7
+ our community a harassment-free experience for everyone, regardless of age, body
8
+ size, disability, ethnicity, gender identity and expression, level of experience,
9
+ nationality, personal appearance, race, religion, or sexual identity and
10
+ orientation.
11
+
12
+ ## Our Standards
13
+
14
+ Examples of behavior that contributes to creating a positive environment
15
+ include:
16
+
17
+ * Using welcoming and inclusive language
18
+ * Being respectful of differing viewpoints and experiences
19
+ * Gracefully accepting constructive criticism
20
+ * Focusing on what is best for the community
21
+ * Showing empathy towards other community members
22
+
23
+ Examples of unacceptable behavior by participants include:
24
+
25
+ * The use of sexualized language or imagery and unwelcome sexual attention or
26
+ advances
27
+ * Trolling, insulting/derogatory comments, and personal or political attacks
28
+ * Public or private harassment
29
+ * Publishing others' private information, such as a physical or electronic
30
+ address, without explicit permission
31
+ * Other conduct which could reasonably be considered inappropriate in a
32
+ professional setting
33
+
34
+ ## Our Responsibilities
35
+
36
+ Project maintainers are responsible for clarifying the standards of acceptable
37
+ behavior and are expected to take appropriate and fair corrective action in
38
+ response to any instances of unacceptable behavior.
39
+
40
+ Project maintainers have the right and responsibility to remove, edit, or
41
+ reject comments, commits, code, wiki edits, issues, and other contributions
42
+ that are not aligned to this Code of Conduct, or to ban temporarily or
43
+ permanently any contributor for other behaviors that they deem inappropriate,
44
+ threatening, offensive, or harmful.
45
+
46
+ ## Scope
47
+
48
+ This Code of Conduct applies both within project spaces and in public spaces
49
+ when an individual is representing the project or its community. Examples of
50
+ representing a project or community include using an official project e-mail
51
+ address, posting via an official social media account, or acting as an appointed
52
+ representative at an online or offline event. Representation of a project may be
53
+ further defined and clarified by project maintainers.
54
+
55
+ ## Enforcement
56
+
57
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
58
+ reported by contacting the project team at [jekyll@sverrirs.com](mailto:jekyll@sverrirs.com). All
59
+ complaints will be reviewed and investigated and will result in a response that
60
+ is deemed necessary and appropriate to the circumstances. The project team is
61
+ obligated to maintain confidentiality with regard to the reporter of an incident.
62
+ Further details of specific enforcement policies may be posted separately.
63
+
64
+ Project maintainers who do not follow or enforce the Code of Conduct in good
65
+ faith may face temporary or permanent repercussions as determined by other
66
+ members of the project's leadership.
67
+
68
+ ## Attribution
69
+
70
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
71
+ available at [http://contributor-covenant.org/version/1/4][version]
72
+
73
+ [homepage]: http://contributor-covenant.org
74
+ [version]: http://contributor-covenant.org/version/1/4/
data/Gemfile ADDED
@@ -0,0 +1,8 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in jekyll-webp.gemspec
4
+ gemspec
5
+
6
+ if ENV["JEKYLL_VERSION"]
7
+ gem "jekyll", "~> #{ENV["JEKYLL_VERSION"]}"
8
+ end
data/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2016 Sverrir Sigmundarson
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
22
+
@@ -0,0 +1,90 @@
1
+
2
+ # WebP Generator for Jekyll
3
+ WebP Image Generator for Jekyll Sites can automatically generate WebP images for all images on your static site and serve them when possible.
4
+ > Read more about this tool on my blog at <a href="https://blog.sverrirs.com/2016/06/webp-generator-for-jekyll-sites.html" target="_blank">blog.sverrirs.com</a>
5
+
6
+ ## Installation
7
+
8
+ ```
9
+ gem install jekyll-webp
10
+ ```
11
+
12
+ The release includes all necessary files to run, including the WebP redistributable executable files.
13
+
14
+ > Currently the release includes the v0.5.1 version of the WebP utilities for Windows, Linux and Mac OS X 10.9 (Mountain Lion). Other versions and releases can be downloaded directly from <a href="https://developers.google.com/speed/webp/docs/precompiled" target="_blank">the Google page</a>.
15
+
16
+ Add the gem to your `Gemfile` and to Jekyll's `_config.yml` then run `jekyll serve` again and you should see the generator run during site generation.
17
+
18
+ ## Configuration
19
+ The plugin can be configured in the site's `_config.yml` file by including the `webp` configuration element
20
+
21
+ ``` yml
22
+ ############################################################
23
+ # Site configuration for the WebP Generator Plugin
24
+ # The values here represent the defaults if nothing is set
25
+ webp:
26
+ enabled: true
27
+
28
+ # The quality of the webp conversion 0 to 100 (where 100 is least lossy)
29
+ quality: 75
30
+
31
+ # List of directories containing images to optimize, nested directories will not be checked
32
+ # By default the generator will search for a folder called `/img` under the site root and process all jpg, png and tiff image files found there.
33
+ img_dir: ["/img"]
34
+
35
+ # add ".gif" to the format list to generate webp for animated gifs as well
36
+ formats: [".jpeg", ".jpg", ".png", ".tiff"]
37
+
38
+ # File extensions for animated gif files
39
+ gifs: [".gif"]
40
+
41
+ # Set to true to always regenerate existing webp files
42
+ regenerate: false
43
+
44
+ # Local path to the WebP utilities to use (relative or absolute)
45
+ # Omit or leave as nil to use the utilities shipped with the gem, override only to use your local install
46
+ webp_path: nil
47
+
48
+ # List of files or directories to exclude
49
+ # e.g. custom or hand generated webp conversion files
50
+ exclude: []
51
+ ############################################################
52
+ ```
53
+
54
+ ## Simplest use: HTML
55
+ In case you don't have control over your webserver then using the `<picture>` element and specifying all image formats available is the best option. This way the browser will decide which format to use based on its own capabilities.
56
+
57
+ ``` html
58
+ <picture>
59
+ <source srcset="/path/to/image.webp" type="image/webp">
60
+ <img src="/path/to/image.jpg" alt="">
61
+ </picture>
62
+ ```
63
+
64
+ ## Advanced use: Webserver Configuration
65
+ If you can then configuring your webserver to serve your new _.webp_ files to clients that support the format is probably the least problematic approach. This way you don't need to make any changes to your HTML files as your webserver will automatically serve WebP images when the client supports them.
66
+
67
+ Below is an example for a .htaccess configuration section in an Apache web-server. It will redirect users to webp images whenever possible.
68
+
69
+ ```
70
+ ####################
71
+ # Attempt to redirect images to WebP if one exists
72
+ # and the client supports the file format
73
+ ####################
74
+ # check if browser accepts webp
75
+ RewriteCond %{HTTP_ACCEPT} image/webp
76
+
77
+ # check if file is jpg or png
78
+ RewriteCond %{REQUEST_FILENAME} (.*)\.(jpe?g|png)$
79
+
80
+ # check if corresponding webp file exists image.png -> image.webp
81
+ RewriteCond %1\.webp -f
82
+
83
+ # serve up webp instead
84
+ RewriteRule (.+)\.(jpe?g|png)$ $1.webp [T=image/webp,E=accept:1]
85
+
86
+ AddType image/webp .webp
87
+ ```
88
+
89
+ > Depending on other configurations in your `.htaccess` file you might have to update your `ExpiresByType`, `ExpiresDefault` and `Header set Cache-Control` directives to include the webp format as well.
90
+
@@ -0,0 +1,13 @@
1
+ require 'rake'
2
+ require 'rake/testtask'
3
+
4
+ Rake::TestTask.new do |t|
5
+ t.libs.push 'lib'
6
+ t.libs.push 'specs'
7
+ t.verbose = true
8
+ t.pattern = "spec/*_spec.rb"
9
+ t.test_files = FileList['spec/*_spec.rb']
10
+ end
11
+
12
+ desc "Run tests"
13
+ task :default => [:test]
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -0,0 +1,26 @@
1
+ # coding: utf-8
2
+ require_relative 'lib/jekyll-webp/version'
3
+
4
+ Gem::Specification.new do |spec|
5
+ spec.name = "jekyll-webp"
6
+ spec.version = Jekyll::Webp::VERSION
7
+ spec.platform = Gem::Platform::RUBY
8
+ spec.date = DateTime.now.strftime('%Y-%m-%d')
9
+ spec.authors = ["Sverrir Sigmundarson"]
10
+ spec.email = ["jekyll@sverrirs.com"]
11
+ spec.homepage = "https://github.com/sverrirs/jekyll-webp"
12
+ spec.license = "MIT"
13
+
14
+ spec.summary = %q{WebP image generator for Jekyll 3 websites}
15
+ spec.description = %q{WebP Image Generator for Jekyll 3 Sites that automatically generate WebP images for all images on your static site and serves them when possible.}
16
+
17
+ spec.files = Dir['CODE_OF_CONDUCT.md', 'README.md', 'LICENSE', 'Rakefile', '*.gemspec', 'Gemfile', 'lib/**/*', 'spec/**/*', 'bin/**/*']
18
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
19
+ spec.test_files = spec.files.grep(%r{^spec/})
20
+ spec.require_paths = ["lib"]
21
+
22
+ spec.add_development_dependency "jekyll", "~> 3.0"
23
+ spec.add_development_dependency "bundler", "~> 1.5"
24
+ spec.add_development_dependency "rake", "~> 1.5"
25
+ spec.add_development_dependency "minitest", '~> 5.4', '>= 5.4.3'
26
+ end
@@ -0,0 +1,9 @@
1
+ require "jekyll-webp/version"
2
+ require "jekyll-webp/defaults"
3
+ require "jekyll-webp/webpExec"
4
+ require "jekyll-webp/webpGenerator"
5
+
6
+ module Jekyll
7
+ module Webp
8
+ end # module Webp
9
+ end # module Jekyll
@@ -0,0 +1,38 @@
1
+ module Jekyll
2
+ module Webp
3
+
4
+ # The default configuration for the Webp generator
5
+ # The values here represent the defaults if nothing is set
6
+ DEFAULT = {
7
+ 'enabled' => false,
8
+
9
+ # The quality of the webp conversion 0 to 100 (where 100 is least lossy)
10
+ 'quality' => 75,
11
+
12
+ # List of directories containing images to optimize, Nested directories will not be checked
13
+ 'img_dir' => ["/img"],
14
+
15
+ # add ".gif" to the format list to generate webp for animated gifs as well
16
+ 'formats' => [".jpeg", ".jpg", ".png", ".tiff"],
17
+
18
+ # File extensions for animated gif files
19
+ 'gifs' => [".gif"],
20
+
21
+ # Set to true to always regenerate existing webp files
22
+ 'regenerate'=> false,
23
+
24
+ # Local path to the WebP utilities to use (relative or absolute)
25
+ # Leave as nil to use the cmd line utilities shipped with the gem, override to use your local install
26
+ 'webp_path' => nil,
27
+
28
+ # List of files or directories to exclude
29
+ # e.g. custom or hand generated webp conversion files
30
+ 'exclude' => [],
31
+
32
+ # List of files or directories to explicitly include
33
+ # e.g. single files outside of the main image directories
34
+ 'include' => []
35
+ }
36
+
37
+ end # module Webp
38
+ end # module Jekyll
@@ -0,0 +1,8 @@
1
+ module Jekyll
2
+ module Webp
3
+ VERSION = "0.1.0"
4
+ # When modifying remember to issue a new tag command in git before committing, then push the new tag
5
+ # git tag -a v0.1.0 -m "Gem v0.1.0"
6
+ # git push origin --tags
7
+ end #module Webp
8
+ end #module Jekyll
@@ -0,0 +1,91 @@
1
+ require 'open3'
2
+
3
+ module Jekyll
4
+ module Webp
5
+
6
+ class WebpExec
7
+
8
+ #
9
+ # Runs the WebP executable for the given input parameters
10
+ # the function detects the OS platform and architecture automatically
11
+ #
12
+ def self.run(quality, input_file, output_file)
13
+
14
+ # What is the path to the execs inside the gem? perhaps just bin/?
15
+ bin_path = "bin/"
16
+
17
+ # What is the OS and architecture specific executable name?
18
+ exe_name = WebpExec.exe_name
19
+
20
+ # We need to locate the Gems bin path as we're currently running inside the
21
+ # jekyll site working directory
22
+ # http://stackoverflow.com/a/10083594/779521
23
+ gem_spec = Gem::Specification.find_by_name("jekyll-webp")
24
+ gem_root = gem_spec.gem_dir
25
+
26
+ # Construct the full path to the executable
27
+ full_path = File.join(gem_root, bin_path, exe_name)
28
+
29
+ # Construct the full program call
30
+ cmd = "\"#{full_path}\" -quiet -mt -q #{quality.to_s} \"#{input_file}\" -o \"#{output_file}\""
31
+
32
+ # Execute the command
33
+ stdin, stdout, stderr = Open3.popen3(cmd)
34
+
35
+ # Return any captured return value
36
+ return [stdin, stdout, stderr]
37
+ end #function run
38
+
39
+ #
40
+ # Returns the correct executable name depending on the OS platform and OS architecture
41
+ #
42
+ def self.exe_name
43
+ if OS.mac?
44
+ return "osx-cwebp"
45
+ elsif OS.windows?
46
+ if OS.x32?
47
+ return "win-x86-cwebp.exe"
48
+ else
49
+ return "win-x64-cwebp.exe"
50
+ end
51
+ elsif OS.unix? || OS.linux?
52
+ if OS.x32?
53
+ return "linux-x86-cwebp"
54
+ else
55
+ return "linux-x64-cwebp"
56
+ end
57
+ else
58
+ raise ArgumentError.new("OS platform could not be identified (gem can only be run on linux,osx or windows)")
59
+ end
60
+ end #function exe_name
61
+
62
+ end #class WebpExec
63
+
64
+ end #module Webp
65
+
66
+ module OS
67
+ def OS.windows?
68
+ (/cygwin|mswin|mingw|bccwin|wince|emx/ =~ RUBY_PLATFORM) != nil
69
+ end
70
+
71
+ def OS.mac?
72
+ (/darwin/ =~ RUBY_PLATFORM) != nil
73
+ end
74
+
75
+ def OS.unix?
76
+ !OS.windows?
77
+ end
78
+
79
+ def OS.linux?
80
+ OS.unix? and not OS.mac?
81
+ end
82
+
83
+ def OS.x32?
84
+ return 1.size != 8
85
+ end
86
+
87
+ def OS.x64?
88
+ return 1.size == 8
89
+ end
90
+ end #module OS
91
+ end #module Jekyll
@@ -0,0 +1,102 @@
1
+ require 'jekyll/document'
2
+
3
+ module Jekyll
4
+ module Webp
5
+
6
+ #
7
+ # A static file to hold the generated webp image after generation
8
+ # so that Jekyll will copy it into the site output directory
9
+ class WebpFile < StaticFile
10
+ def write(dest)
11
+ true # Recover from strange exception when starting server without --auto
12
+ end
13
+ end #class WebPImageFile
14
+
15
+ class WebpGenerator < Generator
16
+ # This generator is safe from arbitrary code execution.
17
+ safe true
18
+
19
+ # This generator should be passive with regard to its execution
20
+ priority :lowest
21
+
22
+ # Generate paginated pages if necessary (Default entry point)
23
+ # site - The Site.
24
+ #
25
+ # Returns nothing.
26
+ def generate(site)
27
+
28
+ # Retrieve and merge the configuration from the site yml file
29
+ @config = DEFAULT.merge(site.config['webp'] || {})
30
+
31
+ # If disabled then simply quit
32
+ if !@config['enabled']
33
+ Jekyll.logger.info "WebP:","Disabled in site.config."
34
+ return
35
+ end
36
+
37
+ Jekyll.logger.info "WebP:","Starting"
38
+
39
+ # If the site destination directory has not yet been created then create it now. Otherwise, we cannot write our file there.
40
+ Dir::mkdir(site.dest) if !File.directory? site.dest
41
+
42
+ # Counting the number of files generated
43
+ file_count = 0
44
+
45
+ # Iterate through every image in each of the image folders and create a webp image
46
+ # if one has not been created already for that image.
47
+ for imgdir in @config['img_dir']
48
+ imgdir_source = File.join(site.source, imgdir)
49
+ Jekyll.logger.info "WebP:","Processing #{imgdir_source}"
50
+
51
+ # handle only jpg, jpeg, png and gif
52
+ Dir.foreach(imgdir_source) do |imgfile|
53
+
54
+ # Skip empty stuff
55
+ next if imgfile == '.' or imgfile == '..'
56
+ file_ext = File.extname(imgfile).downcase
57
+
58
+ # If the file is not one of the supported formats, exit early
59
+ next if !@config['formats'].include? file_ext
60
+
61
+ # TODO: Do an exclude check
62
+
63
+ # Create the output file path
64
+ file_noext = File.basename(imgfile, file_ext)
65
+ outfile_filename = file_noext+ ".webp"
66
+ outfile_fullpath_webp = File.join(imgdir_source, outfile_filename)
67
+
68
+ # Create the full input file name
69
+ infile_fullpath = File.join(imgdir_source, imgfile)
70
+
71
+ # Check if the file already has a webp alternative?
72
+ # If we're force rebuilding all webp files then ignore the check
73
+ # also check the modified time on the files to ensure that the webp file
74
+ # is newer than the source file, if not then regenerate
75
+ next if !@config['regenerate'] && File.file?(outfile_fullpath_webp) &&
76
+ File.mtime(outfile_fullpath_webp) > File.mtime(infile_fullpath)
77
+
78
+ if( File.file?(outfile_fullpath_webp) &&
79
+ File.mtime(outfile_fullpath_webp) <= File.mtime(infile_fullpath) )
80
+ Jekyll.logger.info "WebP:", "Change to source image file #{imgfile} detected, regenerating WebP"
81
+ #puts " WebP: "+File.mtime(outfile_fullpath_webp).strftime('%Y-%m-%d %H:%M:%S')
82
+ #puts " Source: "+File.mtime(infile_fullpath).strftime('%Y-%m-%d %H:%M:%S')
83
+ end
84
+
85
+ # Generate the file
86
+ WebpExec.run(@config['quality'], infile_fullpath, outfile_fullpath_webp)
87
+
88
+ # Keep the webp file from being cleaned by Jekyll
89
+ site.static_files << WebpFile.new(site, site.dest, imgdir, outfile_filename)
90
+ file_count += 1
91
+
92
+ end # dir.foreach
93
+ end # img_dir
94
+
95
+ Jekyll.logger.info "WebP:","Generator Complete: #{file_count} file(s) generated"
96
+
97
+ end #function generate
98
+
99
+ end #class WebPGenerator
100
+
101
+ end #module Webp
102
+ end #module Jekyll
metadata ADDED
@@ -0,0 +1,128 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: jekyll-webp
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Sverrir Sigmundarson
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-12-02 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: jekyll
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '3.0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '3.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: bundler
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.5'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.5'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rake
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '1.5'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '1.5'
55
+ - !ruby/object:Gem::Dependency
56
+ name: minitest
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '5.4'
62
+ - - ">="
63
+ - !ruby/object:Gem::Version
64
+ version: 5.4.3
65
+ type: :development
66
+ prerelease: false
67
+ version_requirements: !ruby/object:Gem::Requirement
68
+ requirements:
69
+ - - "~>"
70
+ - !ruby/object:Gem::Version
71
+ version: '5.4'
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: 5.4.3
75
+ description: WebP Image Generator for Jekyll 3 Sites that automatically generate WebP
76
+ images for all images on your static site and serves them when possible.
77
+ email:
78
+ - jekyll@sverrirs.com
79
+ executables:
80
+ - linux-x64-cwebp
81
+ - linux-x86-cwebp
82
+ - osx-cwebp
83
+ - win-x64-cwebp.exe
84
+ - win-x86-cwebp.exe
85
+ extensions: []
86
+ extra_rdoc_files: []
87
+ files:
88
+ - CODE_OF_CONDUCT.md
89
+ - Gemfile
90
+ - LICENSE
91
+ - README.md
92
+ - Rakefile
93
+ - bin/linux-x64-cwebp
94
+ - bin/linux-x86-cwebp
95
+ - bin/osx-cwebp
96
+ - bin/win-x64-cwebp.exe
97
+ - bin/win-x86-cwebp.exe
98
+ - jekyll-webp.gemspec
99
+ - lib/jekyll-webp.rb
100
+ - lib/jekyll-webp/defaults.rb
101
+ - lib/jekyll-webp/version.rb
102
+ - lib/jekyll-webp/webpExec.rb
103
+ - lib/jekyll-webp/webpGenerator.rb
104
+ homepage: https://github.com/sverrirs/jekyll-webp
105
+ licenses:
106
+ - MIT
107
+ metadata: {}
108
+ post_install_message:
109
+ rdoc_options: []
110
+ require_paths:
111
+ - lib
112
+ required_ruby_version: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - ">="
115
+ - !ruby/object:Gem::Version
116
+ version: '0'
117
+ required_rubygems_version: !ruby/object:Gem::Requirement
118
+ requirements:
119
+ - - ">="
120
+ - !ruby/object:Gem::Version
121
+ version: '0'
122
+ requirements: []
123
+ rubyforge_project:
124
+ rubygems_version: 2.4.8
125
+ signing_key:
126
+ specification_version: 4
127
+ summary: WebP image generator for Jekyll 3 websites
128
+ test_files: []