
* Few small commits added recently and last version released in 2023
** Czkawka GTK is in maintenance mode receiving only bugfixes
*** Cedinia is an experimental android app, video tools are not available due missing ffmpeg in Android
## Other apps There are many similar applications to Czkawka on the Internet, which do some things better and some things worse: ### GUI - [DupeGuru](https://github.com/arsenetar/dupeguru) - Many options to customize - [FSlint](https://github.com/pixelb/fslint) - A little outdated, but still have some tools not available in Czkawka - [AntiDupl.NET](https://github.com/ermig1979/AntiDupl) - Shows a lot of metadata of compared images - [Video Duplicate Finder](https://github.com/0x90d/videoduplicatefinder) - Finds similar videos(surprising, isn't it) ### CLI Due to limited time, the biggest emphasis is on the GUI version so if you are looking for really good and feature-packed console apps, then take a look at these: - [Fclones](https://github.com/pkolaczk/fclones) - One of the fastest tools to find duplicates; it is written also in Rust - [Rmlint](https://github.com/sahib/rmlint) - Nice console interface and also is feature packed - [RdFind](https://github.com/pauldreik/rdfind) - Fast, but written in C++ ¯\\\_(ツ)\_/¯ ## Projects using Czkawka Czkawka exposes its common functionality through a crate called **`czkawka_core`**, which can be reused by other projects. It is written in Rust and is used by all Czkawka frontends (`czkawka_gui`, `czkawka_cli`, `krokiet`, `cedinia`). It is also used by external projects, such as: - **Czkawka Tauri** - https://github.com/shixinhuang99/czkawka-tauri - A Tauri-based GUI frontend for Czkawka. - **page-dewarp** - https://github.com/lmmx/page-dewarp - A library for dewarping document images using a cubic sheet model. Bindings are also available for: - **Python** - https://pypi.org/project/czkawka/ Some projects work as wrappers around `czkawka_cli`. Without directly depending on `czkawka_core`, they allow simple scanning and retrieving results in JSON format: - **Schluckauf** - https://github.com/fadykuzman/schluckauf ## Thanks Big thanks to Pádraig Brady, creator of fantastic FSlint, because without his work I wouldn't create this tool. Thanks also to all the people who contributed to the project in every possible way Also, I really appreciate work of people that create crates on which Czkawka is based and for that I try to report bugs to make it even better. ## How to help? - **Creating issues** - Mainly related to bugs, oddly behaving functionality, etc. As you can see from the issue tracker, there are plenty of ideas for new features, but most of them are either difficult to implement or not aligned with the vision of the project, which evolves slightly over time. - **Creating pull requests** - Bug fixes are of course very welcome. Regarding new features, it is best to consult with me before implementing them to confirm they align with the project vision. - **Updating translations** - The project uses the Crowdin platform, where translations can be created and updated. In the case of a new release and missing translations, I use machine translation, which is often inaccurate, so updating translations is highly appreciated. - **Creating packages for various platforms** - Due to the difficulties related to adding and maintaining support for each new platform, such as learning package formats like deb or rpm, creating installers and packages, I decided to mainly focus on providing prebuilt binaries. However, having the project available in distribution repositories or in projects such as Chocolatey, Homebrew or Winget would be beneficial for users who prefer centralized repositories. - **Creating articles, videos, tutorials, etc.** - Any material that helps people better understand this program and its capabilities is welcome. - **Recommending it to friends, family, coworkers, etc.** - This is probably the simplest way to help the project become even more popular, which gives me motivation to continue developing the program. Here are a few example ways to naturally mention this program in a regular conversation: **S** - Someone **Y** - You ### Situation 1: - **S** - Hey Anon, I have a lot of junk on my disk, what should I do? - **Y** - Download Krokiet/Czkawka. They are completely free and works on almost every system. - **S** - Thanks man! ### Situation 2: - **S** - I am so thirsty... - **Y** - Have you heard about Krokiet/Czkawka? - **S** - Wait, what? - **Y** - Krokiet and Czkawka, in case you did not know, let you clean unnecessary files from your disk. They are completely free... - **S** - That is nice, but I am thirsty... - **Y** - ...they work on Windows, Linux and macOS, and some people even port them to FreeBSD and Android... ## AI Policy The vast majority of the code in this project was written by me (qarmin) without using AI. However, as AI tools have improved and can significantly simplify development and reduce boilerplate, I see no reason to forbid their use. I have also added a CLAUDE.md file to the repo to make it easier to provide AI tools with context about the project’s style and code structure. That said, every pull request, whether created with AI or not, must meet proper quality standards. The author must be able to clearly explain what the code does, without relying on AI for that explanation. I manually review every PR and test each change, so the risk of incorrect code slipping through is low. Still, to avoid wasting time, please refrain from submitting AI Slop PRs. ## Officially Supported Projects Only this repository, [prebuild-binaries](https://github.com/qarmin/czkawka/releases), projects on [crates.io](https://crates.io/crates/czkawka_gui) and [flathub](https://flathub.org/apps/com.github.qarmin.czkawka) are directly maintained by me. Czkawka does not have an official website, so do not trust any sites that claim to be the official one. If you use packages from unofficial sources, make sure they are safe. ## License The entire code in this repository is licensed under the [MIT](https://mit-license.org/) license. All images and audio files are licensed under the [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) license. The Czkawka GTK GUI and CLI applications are licensed under the [MIT](https://mit-license.org/) license, while the Krokiet/Cedinia(due Slint license requirements) are licensed under the [GPL-3.0-only](https://www.gnu.org/licenses/gpl-3.0.en.html) license. ## Donations If you are using the app, I would appreciate a donation for its further development, which can be done [here](https://github.com/sponsors/qarmin).