czkawka README

The project's README from github.com/qarmin/czkawka. As one markdown file: README.md.

krokiet_logo

Krokiet ((IPA: [ˈkrɔcɛt]), "croquette" in Polish) new generation GUI frontend, simple, multiplatform, fast and free app to remove unnecessary files from your computer.

czkawka_logo

Czkawka (tch•kav•ka (IPA: [ˈʧ̑kafka]), "hiccup" in Polish) older gtk4 GUI frontend, superseded by Krokiet. Version 12.0 is the last released version - no new binaries will be provided. New users and existing users are encouraged to switch to Krokiet.

cedinia_logo

Cedinia - Android touch friendly GUI frontend for Czkawka Core, built with Slint.

Features

Krokiet

Czkawka

Changelog about each version can be found in CHANGELOG.md.

New releases can be found in Github releases and nightly builds also in Nightly releases

You can read more about the 12.0 release, its new features, and the issues that were fixed in the following articles:

Usage, installation, compilation, requirements, license

Each tool uses different technologies, so you can find instructions for each of them in the appropriate file:

Comparison to other tools

In this comparison remember, that even if app have same features they may work different(e.g. one app may have more options to choose than other).

Krokiet Czkawka Cedinia FSlint DupeGuru Bleachbit
Language Rust Rust Rust Python Python/Obj-C Python
Framework base language Rust C Rust C C/C++/Obj-C/Swift C
Framework Slint GTK 4 Slint PyGTK2 Qt 5 (PyQt)/Cocoa PyGTK3
OS Lin,Mac,Win Lin,Mac,Win Android Lin Lin,Mac,Win Lin,Mac,Win
Duplicate finder ✔ ✔ ✔ ✔ ✔
Empty files ✔ ✔ ✔ ✔
Empty folders ✔ ✔ ✔ ✔
Temporary files ✔ ✔ ✔ ✔ ✔
Big files ✔ ✔ ✔
Similar images ✔ ✔ ✔ ✔
Similar videos(audio) ✔ ✔ ✔
Similar videos(frames) ✔ ✔
Music duplicates(tags) ✔ ✔ ✔ ✔
Music duplicates(content) ✔ ✔ ✔
Invalid symlinks ✔ ✔ ✔
Broken files ✔ ✔ ✔
Invalid names/extensions ✔ ✔ ✔ ✔
Exif cleaner ✔ ✔
Video optimizer ✔
Bad Names ✔ ✔
Names conflict ✔
Installed packages ✔
Bad ID ✔
Non stripped binaries ✔
Redundant whitespace ✔
Overwriting files ✔ ✔
Portable version ✔ ✔ ✔
Multiple languages ✔ ✔ ✔ ✔ ✔ ✔
Cache support ✔ ✔ ✔ ✔
In active development Yes No** Yes*** No No* Yes

* Few small commits added recently and last version released in 2023

** Czkawka GTK 12.0 was the last released version - no new binaries will be provided

*** Cedinia is an 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

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:

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:

Bindings are also available for:

Some projects work as wrappers around czkawka_cli. Without directly depending on czkawka_core, they allow simple scanning and retrieving results in JSON format:

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?

S - Someone
Y - You

Situation 1:

Situation 2:

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 AGENTS.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, projects on crates.io and flathub 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 license.

All images and audio files are licensed under the CC BY 4.0 license.

The Czkawka GTK GUI and CLI applications are licensed under the MIT license, while the Krokiet and Cedinia(due Slint license requirements) are licensed under the GPL-3.0-only license.

Donations

If you are using the app, I would appreciate a donation for its further development, which can be done here.

czkawka (qarmin/czkawka)

optimizer
Searching Database…

34.3K ·GitHub
What is this?Czkawka is a multi-functional Rust app for finding and cleaning duplicate files, empty folders, similar images/videos/music, broken files, temporary files and more on your disk.
Is it one app or a family of different frontends?It is a family of frontends sharing one core library: Krokiet (new Slint GUI, actively developed), Czkawka (older GTK4 GUI, now superseded and frozen), Cedinia (touch-friendly Android GUI), and a CLI for automation.
How do I install and run it?Download prebuilt binaries (or nightly builds) for Krokiet, Czkawka GUI or the CLI from GitHub Releases, or compile from source; each frontend has its own usage/build instructions in a dedicated file in the repo.
Do I need anything special to build or run it, like ffmpeg?The core has minimal runtime and build dependencies and a portable version is available; Video Optimizer and other video tools need ffmpeg under the hood, which is why they are missing from the Android (Cedinia) build.
Is the Czkawka GTK GUI still being developed?No, Czkawka GTK's version 12.0 is the final release with no new binaries planned; users are pushed toward Krokiet, which is the actively developed replacement.
Which platforms does it actually run on?It runs on Linux, Windows, macOS and even FreeBSD across x86, ARM and RISC-V, plus Android through the Cedinia frontend (though video tools are unavailable there).
Does it phone home or collect any data?No, Czkawka has no internet access and does not collect any user information or statistics.
What kinds of scans can it run besides finding duplicates?It also finds empty folders/files, big files, temporary files, similar images, similar videos, duplicate music by tags or content, invalid symlinks, broken/corrupted files, mismatched extensions, and can strip Exif metadata or optimize videos.
Why are there three separate GUI apps instead of one?Krokiet is the new Slint-based GUI under active development, the old GTK4-based Czkawka GUI is frozen at v12.0 and superseded, and Cedinia is a touch-optimized Android frontend; all three reuse the same czkawka_core engine.
Does rescanning the same folder take as long every time?No, scans are cached so the second and later scans of unchanged files are much faster than the first run.
Can I reuse its scanning engine in my own project?Yes, the czkawka_core Rust crate is reusable and already powers third-party projects like a Tauri-based GUI frontend and Python bindings that run czkawka_cli and parse JSON output.
Creator
qarmin
Size
12.3 MB
Stars
34.3K
Age
6y
Commits · 90 Days