All Projects → qarmin → Czkawka

qarmin / Czkawka

Licence: other
Multi functional app to find duplicates, empty folders, similar images etc.

Programming Languages

rust
11053 projects
Fluent
28 projects

Projects that are alternatives of or similar to Czkawka

removedupes
Remove Duplicate Messages
Stars: ✭ 52 (-99.03%)
Mutual labels:  duplicates, cleaner
Ast
Generic AST parsing library for kotlin multiplatform
Stars: ✭ 113 (-97.89%)
Mutual labels:  multiplatform
Kotlin Inline Logger
A logger facilitating lazily-evaluated log calls via Kotlin's inline classes & functions.
Stars: ✭ 77 (-98.56%)
Mutual labels:  multiplatform
Clean Me
A macOS system analyser and cleaner
Stars: ✭ 1,346 (-74.89%)
Mutual labels:  cleaner
Svg Autocrop
🚗🌽🔳An NPM module to autocrop and slim down SVGs
Stars: ✭ 80 (-98.51%)
Mutual labels:  cleaner
Ccc
💰 Currency Converter Calculator with power of Kotlin Multiplatform
Stars: ✭ 109 (-97.97%)
Mutual labels:  multiplatform
Reader
Extract clean(er), readable text from web pages via Mercury Web Parser.
Stars: ✭ 75 (-98.6%)
Mutual labels:  cleaner
Multiplatform Compose
A Kotlin library to use Jetpack Compose in Android and iOS. Allow to write UI for both in Kotin. Still experimental as many compose features are not yet available.
Stars: ✭ 126 (-97.65%)
Mutual labels:  multiplatform
Composer Cleaner
Victor The Cleaner: removes unnecessary files from vendor directory
Stars: ✭ 114 (-97.87%)
Mutual labels:  cleaner
Dmon
Single header C99 portable library for monitoring directory changes.
Stars: ✭ 95 (-98.23%)
Mutual labels:  multiplatform
Pcapplusplus
PcapPlusPlus is a multiplatform C++ library for capturing, parsing and crafting of network packets. It is designed to be efficient, powerful and easy to use. It provides C++ wrappers for the most popular packet processing engines such as libpcap, WinPcap, DPDK and PF_RING.
Stars: ✭ 1,322 (-75.34%)
Mutual labels:  multiplatform
One Lin3r
Gives you one-liners that aids in penetration testing operations, privilege escalation and more
Stars: ✭ 1,259 (-76.51%)
Mutual labels:  multiplatform
Apertusvr
Virtual Reality Software Library
Stars: ✭ 112 (-97.91%)
Mutual labels:  multiplatform
Bulk Crap Uninstaller
Remove large amounts of unwanted applications quickly.
Stars: ✭ 1,212 (-77.39%)
Mutual labels:  cleaner
Cleanexpert
A cleaner app for android
Stars: ✭ 120 (-97.76%)
Mutual labels:  cleaner
Fidocadj
FidoCadJ is a free user-friendly vector graphic editor for MacOSX, Linux, Windows and Android
Stars: ✭ 76 (-98.58%)
Mutual labels:  multiplatform
Skrub
A package to remove junk from Composer installations and trim build sizes.
Stars: ✭ 91 (-98.3%)
Mutual labels:  cleaner
Mindustry
The automation tower defense game
Stars: ✭ 13,105 (+144.5%)
Mutual labels:  multiplatform
Ltecleanerfoss
The last Android cleaner you'll ever need!
Stars: ✭ 141 (-97.37%)
Mutual labels:  cleaner
Fmt
A modern formatting library
Stars: ✭ 12,698 (+136.9%)
Mutual labels:  multiplatform

com github qarmin czkawka

Czkawka (tch•kav•ka (IPA: [ʈ͡ʂkafka]), "hiccup" in Polish) is a simple, fast and free app to remove unnecessary files from your computer.

Features

  • Written in memory safe Rust
  • Amazingly fast - due to using more or less advanced algorithms and multithreading
  • Free, Open Source without ads
  • Multiplatform - works on Linux, Windows and macOS
  • Cache support - second and further scans should be a lot faster than the first one
  • CLI frontend - for easy automation
  • GUI frontend - uses modern GTK 3 and looks similar to FSlint
  • No spying - Czkawka does not have access to the Internet, nor does it collect any user information or statistics
  • Multilingual - app support multiple languages
  • Multiple tools to use:
    • Duplicates - Finds duplicates based on file name, size or hash
    • Empty Folders - Finds empty folders with the help of an advanced algorithm
    • Big Files - Finds the provided number of the biggest files in given location
    • Empty Files - Looks for empty files across the drive
    • Temporary Files - Finds temporary files
    • Similar Images - Finds images which are not exactly the same (different resolution, watermarks)
    • Similar Videos - Looks for similar visually videos
    • Same Music - Searches for music with the same artist, album etc.
    • Invalid Symbolic Links - Shows symbolic links which point to non-existent files/directories
    • Broken Files - Finds files with an invalid extension or that are corrupted

Czkawka

How do I use it?

You can find the instructions on how to use Czkawka here.

Some helpful tricks you can find here

Installation

Installation instructions with download links you can find here.

Compilation

If you want to try and develop Czkawka or just use the latest available feature, you may want to look at the compilation instruction.

Benchmarks

Since Czkawka is written in Rust and it aims to be a faster alternative to FSlint or DupeGuru which are written in Python, we need to compare the speed of these tools.

I tested it on a 256 GB SSD and a i7-4770 CPU.

I prepared a disk and performed a test without any folder exceptions and with disabled ignoring of hard links which contained 363 215 files, took 221,8 GB and had 62093 duplicate files in 31790 groups which occupied 4,1 GB.

I set the minimal file size to check to 1KB on all programs.

App Executing Time
FSlint 2.4.7 (First Run) 86s
FSlint 2.4.7 (Second Run) 43s
Czkawka 3.0.0 (First Run) 8s
Czkawka 3.0.0 (Second Run) 7s
DupeGuru 4.1.1 (First Run) 22s
DupeGuru 4.1.1 (Second Run) 21s

I used Mprof for checking memory usage of FSlint and DupeGuru, and Heaptrack for Czkawka.

App Idle Ram Max Operational Ram Usage Stabilized after search
FSlint 2.4.7 62 MB 164 MB 158 MB
Dupeguru 4.1.1 90 MB 170 MB 166 MB
Czkawka 3.0.0 12 MB 122 MB 60 MB

In Dupeguru I enabled checking images with different dimensions to match Czkawka behavior. Both apps use caching mechanism, so second scan is really fast.

Similar images which check 10949 files that occupied 6.6 GB

App Scan time
Czkawka 3.0.0 (First Run) 276s
Czkawka 3.0.0 (Second Run) 1s
DupeGuru 4.1.1 (First Run) 539s
DupeGuru 4.1.1 (Second Run) 1s

Similar images which check 349 image files that occupied 1.7 GB

App Scan time
Czkawka 3.0.0 (First Run) 54s
Czkawka 3.0.0 (Second Run) 1s
DupeGuru 4.1.1 (First Run) 55s
DupeGuru 4.1.1 (Second Run) 1s

Comparison to other tools

Bleachbit is a master at finding and removing temporary files, while Czkawka only finds the most basic ones. So these two apps shouldn't be compared directly or be considered as an alternative to one another.

Czkawka FSlint DupeGuru Bleachbit
Language Rust Python Python/Obj-C Python
OS Lin,Mac,Win Lin Lin,Mac,Win Lin,Mac,Win
Framework GTK 3 PyGTK2 Qt 5 (PyQt)/Cocoa PyGTK3
Duplicate finder
Empty files
Empty folders
Temporary files
Big files
Similar images
Similar videos
Music duplicates(tags)
Invalid symlinks
Broken files
Names conflict
Installed packages
Invalid names
Bad ID
Non stripped binaries
Redundant whitespace
Overwriting files
Multiple languages(po)
Cache support
In active development Yes No Yes Yes

Other apps

There are many similar applications to Czkawka on the Internet, which do some things better and some things worse.

  • DupeGuru - A lot of options to customize, great photo compare tool
  • FSlint - A little outdated, but still have some tools not available in Czkawka
  • Fclones - One of the fastest tools to find duplicates, it is written also in Rust but only in CLI

Contributions

Contributions to this repository are welcome.

You can help by creating:

  • Bug reports - memory leaks, unexpected behavior, crashes
  • Feature proposals - proposal to change/add/delete some features
  • Pull Requests - implementing a new feature yourself or fixing bugs. If the change is bigger, then it's a good idea to open a new issue to discuss changes.
  • Documentation - There is an instruction which you can improve.
  • Translations - Instruction how to translate files is available here

You can also help by doing different things:

Name

Czkawka is a Polish word which means hiccup.

I chose this name because I wanted to hear people speaking other languages pronounce it, so feel free to spell it the way you want.

This name is not as bad as it seems, because I was also thinking about using words like żółć, gżegżółka or żołądź, but I gave up on these ideas because they contained Polish characters, which would cause difficulty in searching for the project.

At the beginning of the program creation, if the response concerning the name was unanimously negative, I prepared myself for a possible change of the name of the program, and the opinions were extremely mixed.

License

Code is distributed under MIT license.

Icon was created by jannuary and licensed CC-BY-4.0.

Windows dark theme is used from AdMin repo with MIT license.

The program is completely free to use.

"Gratis to uczciwa cena" - "Free is a fair price"

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 create patches for this program, make it available on other systems, create videos, articles about it etc.

Donations

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

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].