ImgBot: Optimizing your images on GitHub
Repository
https://github.com/dabutvin/ImgBot
Introduction
GitHub is a platform based on code hosting for collaboration and version control, they intend on bringing together the world's largest community of different developers to share,discover and build many better software from an open source projects down to private teams.
GitHub also based on tools used in optimizing image in order to compress them to a small file size.
Components
My suggestion is on :
- Image compression
Proposal
The tools is created for image optimization in case of a heavy lifting of an image, all users need to do is sit and relax and wait for IngBot to review the PRs:
ImgBot uses a lossless compression algorithm from Imagemagick
ImgBot Features
- Lossless compression
The tools help to represent image signal putting it to the smallest possible number of bit without the loss o any information.
- Fully open source implementation
The tools is fully based on an open source because it is released under a license in which GitHub grants users the rights to change and distribute the application to anyone and for any purpose.
Natural pull request workflow
The tools allow natural pull requests workflow because it send signal to thee user after compression is fully done.
Compression summaries
The tools gives users all details of the compression activities after it is done.
File and folder ignore options
The tools allow option of ignoring other activities to pop up for user notification during compression.
Stronger compression options
Choice is been given to users to choose whether to perform a stronger compression or a low quality one.
Signed and verified commits
Compression activities is been signed by GitHub platform in other to verified compression activities.
others
Free for Open Source projects, Public + Private repo support, Schedulable optimization runs
EXAMPLES
BENEFIT
ImgBot would crawls all your image files in GitHub and submits the pull requests after applying a lossless compression. This will help in making the file size go down and at the same time leave the dimensions and quality just as good and perfect.
Configuration
ImgBot will 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
],
"aggressive Compression": 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 [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 filename no path is necessary, when ignoring by foldername full path from root is necessary
aggressive Compression
optional
Accepts: true|false
Opt in to use lossy compression algorithms
The default behavior without this setting is lossless compression
CONCLUSION
This tools will greatly improve the GitHub website. It will really improve the website and the user.
Hi @adewararilwan, thank you for your contribution.
You made a good post. Unfortunately GitHub is not Open Source.
I recommend you to read this post: How to choose a valid repository
Your contribution has been evaluated according to Utopian policies and guidelines.
Need help? Chat with us on Discord.
[utopian-moderator]