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)

Searching Database…

34.3K ·GitHub
Что это такое?Czkawka — многофункциональное приложение на Rust для поиска и очистки на диске дубликатов файлов, пустых папок, похожих изображений, видео и музыки, повреждённых файлов, временных файлов и не только.
Это одно приложение или семейство разных интерфейсов?Это семейство интерфейсов, которые используют одну общую базовую библиотеку: Krokiet (новый GUI на Slint, активно развивается), Czkawka (старый GUI на GTK4, теперь устаревший и заморожен), Cedinia (GUI для Android, рассчитанный на сенсорный экран) и CLI для автоматизации.
Как установить и запустить?Скачайте готовые бинарные файлы (или ночные сборки) для Krokiet, GUI Czkawka или CLI со страницы GitHub Releases либо соберите их из исходников. У каждого интерфейса есть свои инструкции по использованию и сборке в отдельном файле в репозитории.
Нужно ли что-то особенное для сборки или запуска, например ffmpeg?Базовая часть почти не требует зависимостей для работы и сборки, и доступна переносная версия. Video Optimizer и другие видеоинструменты под капотом используют ffmpeg, поэтому их нет в сборке для Android (Cedinia).
Всё ещё развивается GTK-интерфейс Czkawka?Нет, Czkawka GTK версии 12.0 — последний релиз, новые бинарные файлы не планируются. Пользователей призывают перейти на Krokiet, который является активно развивающейся заменой.
На каких платформах она реально работает?Она работает на Linux, Windows, macOS и даже FreeBSD на архитектурах x86, ARM и RISC-V, а также на Android через интерфейс Cedinia (правда, видеоинструментов там нет).
Она выходит в интернет или собирает какие-то данные?Нет, у Czkawka нет доступа в интернет, и она не собирает никакой пользовательской информации или статистики.
Какие виды сканирования она умеет делать помимо поиска дубликатов?Она также находит пустые папки и файлы, большие файлы, временные файлы, похожие изображения, похожие видео, дубликаты музыки по тегам или содержимому, битые символические ссылки, повреждённые файлы, файлы с несовпадающими расширениями, а также может удалять метаданные Exif и оптимизировать видео.
Почему есть три отдельных GUI-приложения, а не одно?Krokiet — новый GUI на Slint, который активно развивается. Старый GUI Czkawka на GTK4 заморожен на версии v12.0 и устарел, а Cedinia — интерфейс для Android, оптимизированный под сенсорный экран. Все три используют один и тот же движок czkawka_core.
Занимает ли повторная проверка той же папки каждый раз столько же времени?Нет, результаты сканирования кэшируются, поэтому второе и последующие сканирования неизменённых файлов идут заметно быстрее первого.
Могу ли я использовать её движок сканирования в своём проекте?Да, крейт czkawka_core на Rust можно переиспользовать. Он уже лежит в основе сторонних проектов, например GUI-интерфейса на базе Tauri и Python-биндингов, которые запускают czkawka_cli и разбирают вывод в JSON.
Creator
qarmin
Size
12.3 MB
Stars
34.3K
Age
6y
Commits · 90 Days