All Projects → imgbot → Imgbot

imgbot / Imgbot

Licence: MIT license
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. [email protected]

Programming Languages

C#
18002 projects
HTML
75241 projects
Vue
7211 projects
Less
1899 projects
javascript
184084 projects - #8 most used programming language
EJS
674 projects

Projects that are alternatives of or similar to Imgbot

Imgbot
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. [email protected]
Stars: ✭ 732 (-28.02%)
Mutual labels:  imagemagick, azure-functions, help-wanted, code-quality, image-compression, image-optimization, github-app
Tinify Php
PHP client for the Tinify API.
Stars: ✭ 204 (-79.94%)
Mutual labels:  image-compression, image-optimization
Essential Image Optimization
Essential Image Optimization - an eBook
Stars: ✭ 1,950 (+91.74%)
Mutual labels:  image-compression, image-optimization
Pep8speaks
A GitHub app to automatically review Python code style over Pull Requests
Stars: ✭ 546 (-46.31%)
Mutual labels:  code-quality, github-app
Emage
🧙‍♂️ From developers to developers: a cross-platform tool for losslessly image compression.
Stars: ✭ 99 (-90.27%)
Mutual labels:  image-compression, image-optimization
Tinify Java
Java client for the Tinify API.
Stars: ✭ 107 (-89.48%)
Mutual labels:  image-compression, image-optimization
imagezero
Fast Lossless Color Image Compression Library
Stars: ✭ 49 (-95.18%)
Mutual labels:  compress-images, image-compression
Compress Images
Minify size your images. Image compression with extension: jpg/jpeg, svg, png, gif. NodeJs
Stars: ✭ 331 (-67.45%)
Mutual labels:  image-compression, image-optimization
Compressor
An android image compression library.
Stars: ✭ 6,745 (+563.23%)
Mutual labels:  compress-images, image-compression
Imageflow
High-performance image manipulation for web servers. Includes imageflow_server, imageflow_tool, and libimageflow
Stars: ✭ 3,643 (+258.21%)
Mutual labels:  imagemagick, image-compression
Tinify Python
Python client for the Tinify API.
Stars: ✭ 95 (-90.66%)
Mutual labels:  image-compression, image-optimization
pngloss
Lossy compression of PNG images
Stars: ✭ 73 (-92.82%)
Mutual labels:  image-compression, image-optimization
Image Resizer
On-the-fly image resizing using Node.js and libvips. Heroku Ready!
Stars: ✭ 59 (-94.2%)
Mutual labels:  image-compression, image-optimization
Optimize Images
A command-line interface (CLI) utility written in pure Python to help you reduce the file size of images.
Stars: ✭ 141 (-86.14%)
Mutual labels:  image-compression, image-optimization
Imgp
📸 High-performance cli batch image resizer and rotator
Stars: ✭ 744 (-26.84%)
Mutual labels:  image-compression, image-optimization
create-optimize-images
♻️ Reusable, scalable, bash scripts to create and optimize images.
Stars: ✭ 39 (-96.17%)
Mutual labels:  optimize-images, image-optimization
docker-imgproxy
🌐 An ultra fast, production-grade on-the-fly image processing web server. Designed for high throughput with Nginx caching. Powered by imgproxy.
Stars: ✭ 45 (-95.58%)
Mutual labels:  image-compression, image-optimization
Imager
Automated image compression for efficiently distributing images on the web.
Stars: ✭ 266 (-73.84%)
Mutual labels:  image-compression, image-optimization
Goreadme
Generate readme file from Go doc. Now available with Github actions!
Stars: ✭ 113 (-88.89%)
Mutual labels:  code-quality, github-app
scalafmt-probot
🤖Github bot for checking code formatting with scalafmt
Stars: ✭ 15 (-98.53%)
Mutual labels:  github-integration, github-app

Imgbot

Imgbot crawls all your image files in GitHub and submits pull requests after applying a loss less 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
    "compressWiki": "true", // true|false
    "minKBReduced": 500 // set reduction threshold (default to 10),
    "prTitle" : "Compressed images", // set pull request title
    // set the pull request body, supports any valid github markdown
    // {optimization_ratio} display a message containing the optimization ratio
    // {optimization_details} display the table containing the optimization details
    "prBody" : " Text before optimization ratio {optimization_ratio} Text after optimization ratio 
                Text before optimization details {optimization_details} Text after optimization details",
    
}

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

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 essentially ignoring them
  • When ignoring by file name no path is necessary, when ignoring by folder name full path from root is necessary

aggressiveCompression

  • Optional
  • Accepts: true|false
  • Opt in to use lossy compression algorithms
  • The default behaviour without this setting is loss less compression

compressWiki

  • Optional
  • Accepts: true|false
  • Opt in to also compress wiki repo
    • Example: https://github.com/YOUR_USERNAME/YOUR_REPOSITORY.wiki.git
  • The default behaviour is opt out

minKBReduced

  • Optional
  • Accepts only numbers as input (e.g. "minKBReduced": 500 for a 500 KB threshold)
  • Can be used to limit the frequency of PRs Imgbot will open over time
  • The default setting is 10

prTitle

  • Optional
  • Available only for paid plans
  • Accepts only strings as input (e.g. "prTitle": "My title")
  • Can be used to display any custom pull request title
  • The default setting is "[ImgBot] Optimize images"

prBody

  • Optional
  • Available only for paid plans
  • Accepts only strings as input
  • (e.g. "prBody": "Text before {optimization_ratio} Text after"
                             Text before {optimization_details} Text after")
  • Can be used to display any custom pull request body, written using github markdown
  • Supports two magic tags: {optimization_ratio} //displays the mean optimization ratio for all images
                                             {optimization_details} //display the optimization details for every images
  • The default setting generates the body displayed here

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

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].