An Azure Function solution to crawl through all of your image files in GitHub and losslessly compress them. This will make the file size go down, but leave the dimensions and quality untouched. Once it's done, ImgBot will open a pull request for you to review and merge. help@imgbot.net
Clone or download
dabutvin Merge pull request #297 from dabutvin/img-corrupt
verify images are not corrupt after reset (fixes #273)
Latest commit fa23e9b Jan 17, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github we don't want hacktoberfest issues to go stale Oct 14, 2018
.vscode add MarketplaceSyncFunction Nov 25, 2018
Auth Merge pull request #229 from dabutvin/dependabot/nuget/Microsoft.NET.… Nov 25, 2018
Common Added aggressive compression option to config and logic to support op… Oct 26, 2018
CompressImagesFunction catch MagickErrorException to catch all errors Jan 17, 2019
Docs add missing comma Nov 27, 2018
Install add MarketplaceSyncFunction Nov 25, 2018
MarketplaceSyncFunction Merge remote-tracking branch 'origin/master' into redesign Dec 9, 2018
OpenPrFunction Bump Microsoft.NET.Sdk.Functions from 1.0.23 to 1.0.24 Nov 25, 2018
PrPoisonHandler Bump Microsoft.NET.Sdk.Functions from 1.0.23 to 1.0.24 Nov 25, 2018
RouterFunction Bump Microsoft.NET.Sdk.Functions from 1.0.23 to 1.0.24 Nov 25, 2018
Test Notice when .imgbotconfig has been added \ modified and rescan Dec 17, 2018
Tools adds script for transferring queues Jul 29, 2018
Web Merge pull request #287 from dabutvin/dependabot/npm_and_yarn/Web/mar… Jan 16, 2019
WebHook Notice when .imgbotconfig has been added \ modified and rescan Dec 17, 2018
.gitattributes adds gitattributes and normalizes line endings Aug 1, 2018
.gitignore add authfunction Oct 21, 2018
.imgbotconfig fix ignore path setting Oct 27, 2018
CODE_OF_CONDUCT.md updates the docs for the updated frontend Oct 8, 2018
ImgBot.ruleset Added StyleCop to ImgBot.Web. Nov 18, 2017
ImgBot.sln add MarketplaceSyncFunction Nov 25, 2018
ImgBot.targets Bump StyleCop.Analyzers from 1.1.0-beta008 to 1.1.0-beta009 Sep 5, 2018
LICENSE Create LICENSE Oct 13, 2017
README.md add missing comma to readme Nov 27, 2018
appveyor.yml Added shared settings file for stylecop and enabled treat warnings as… Jul 29, 2018
stylecop.json Added StyleCop to ImgBot.Common. Nov 18, 2017

README.md

ImgBot

ImgBot crawls all your image files in GitHub and submits pull requests after applying a lossless compression. This will make the file size go down, but leave the dimensions and quality just as good.

screenshot

Configuration

ImgBot supports optional configuration through a .imgbotconfig json file. This is not a required step to using ImgBot and is only for more advanced scenarios. This file should be placed in the root of the repository and set to your liking.

{
    "schedule": "daily", // daily|weekly|monthly
    "ignoredFiles": [
    	"*.jpg",                   // by extension
    	"image1.png",              // by filename
    	"public/special_images/*", // by folderpath
    ],
    "aggressiveCompression": true // true|false
}

The following are the currently supported parameters. If there are any configuration settings you would like to see supported, please feel free to open an issue here in the repo or shoot an email over to help@imgbot.net

schedule

  • optional
  • Accepts: daily|weekly|monthly
  • Limits the PRs from ImgBot to once a day, once a week, or once a month respectively
  • The default behavior is to receive ImgBot PRs as images require optimization

ignoredFiles

  • optional
  • Accepts the syntax for searchPattern on Directory.EnumerateFiles()
  • Limits the images optimized by ImgBot by esentially ignoring them
  • When ignoring by filename no path is necessary, when ignoring by foldername full path from root is necessary

aggressiveCompression

  • optional
  • Accepts: true|false
  • Opt in to use lossy compression algorithms
  • The default behavior without this setting is lossless compression

Find out more: https://imgbot.net/docs

Contributing

All the code for ImgBot is available on GitHub. We will gladly accept contributions for the service, the website, and the documentation. This is where you can find out how to get set up to run locally as well as detailed information on exactly how ImgBot works.

https://imgbot.net/docs#contributing