mirror of
https://github.com/Belphemur/CBZOptimizer.git
synced 2025-10-13 20:18:52 +02:00
da508fcb3f86bb22cb06eb75ca38b36ce2e89d64
CBZOptimizer
CBZOptimizer is a Go-based tool designed to optimize CBZ (Comic Book Zip) files by converting images to a specified format and quality. This tool is useful for reducing the size of comic book archives while maintaining acceptable image quality.
Features
- Convert images within CBZ files to different formats (e.g., WebP).
- Adjust the quality of the converted images.
- Process multiple chapters in parallel.
- Option to override the original CBZ files.
Installation
-
Clone the repository:
git clone https://github.com/belphemur/CBZOptimizer.git cd CBZOptimizer
-
Install dependencies:
go mod tidy
Usage
Command Line Interface
The tool provides a CLI command to optimize CBZ files. Below is an example of how to use it:
go run main.go optimize --quality 85 --parallelism 2 --override /path/to/cbz/files
Flags
--quality
,-q
: Quality for conversion (0-100). Default is 85.--parallelism
,-n
: Number of chapters to convert in parallel. Default is 2.--override
,-o
: Override the original CBZ files. Default is false.
Testing
To run the tests, use the following command:
go test ./... -v
GitHub Actions
The project includes a GitHub Actions workflow to run tests on every push and pull request to the main
branch. The workflow is defined in .github/workflows/go.yml
.
Contributing
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Commit your changes (
git commit -am 'Add new feature'
). - Push to the branch (
git push origin feature-branch
). - Create a new Pull Request.
License
This project is licensed under the MIT License. See the LICENSE
file for details.
Languages
Go
98.8%
Dockerfile
1.2%