report_2024.pdf
photo_001.jpg
notes.txt
data.csv
script.py
archive.zip
v1.1 — Now available on PyPI

Filecraft

A CLI organizer you didn't know you needed — yet.

Drop filecraft into any messy directory and watch it sort, rename, merge, and preview changes — all from your terminal, all reversible.

install
pipxpipx install filecraft-cli
pippip install filecraft-cli
AURyay -S filecraft-cli
AUR-binyay -S filecraft-cli-bin
Features

Everything you need, nothing you don't

Filecraft is designed to be minimal yet powerful — the right set of tools for developers who value clarity.

Smart Organize

Sort by extension, date, MIME type. Your directory structure, your way.

Smart Sorting

Seperate files into folders based on extension, date, MIME type. Your directory structure, your way.

Easy Renaming

Rename files with metadata, or sequential numbering.

Merge Directories

Pull files from multiple scattered directories into one clean destination with deduplication.

Dry-Run Preview

See exactly what will change before anything moves. Inspect every operation first.

Revert with History

Made a mistake? Every action is logged. Roll back any operation in seconds.

— All operations are composable

Chain commands together for powerful automation pipelines. Filecraft integrates seamlessly with shell scripts, cron jobs, and CI workflows.

filecraft separate --mode ext --dry-run
How it works

Three steps to clarity

From chaos to clean in a single command. Filecraft handles the logic so you don't have to.

01

Messy Files

Your unorganized directory with random files of all types scattered around.

report.pdf
photo.jpg
notes.txt
data.csv
video.mp4
02

Filecraft CLI

Run a single command. Filecraft analyzes, plans, and previews changes.

filecraft separate
--mode ext
--dry-run
--verbose
03

Organized Folders

Files neatly placed into typed subdirectories. Clean, consistent, reversible.

📁 docs/
📁 images/
📁 data/
📁 videos/
# filecraft handles the rest
Interactive CLI Demo

Build your command

Toggle flags and watch the terminal output update live.

flags & options

# live command preview

filecraft separate --mode ext
filecraft — zsh
live
~/projectson⎇ mainfilecraft separate --mode ext
# Grouping files by extension
→ Scanning ./downloads/
→ Found 24 files to organize
✔ .pdf → ./downloads/pdf/ (6 files)
✔ .jpg → ./downloads/jpg/ (9 files)
✔ .csv → ./downloads/csv/ (4 files)
✔ .py → ./downloads/py/ (3 files)
⚠ 2 files skipped (unrecognized format)
✔ Done — 22 files organized successfully
~/projects ❯
Installation

Get started in seconds

Filecraft requires Python 3.8+. Choose your preferred install method.

pipxRecommended
pipx install filecraft-cli

Recommended — installs in an isolated environment

pip
pip install filecraft-cli

Standard Python package manager

AURRecommended
yay -S filecraft-cli

Arch User Repository — for Arch-based distributions

AUR-binRecommended
yay -S filecraft-cli-bin

Arch User Repository — for Arch-based distributions

Quick start after install

# Organize your downloads folder
cd ~/Downloads && filecraft separate --mode ext --dry-run
# If you like what you see, apply it
filecraft separate --mode ext
Decorative corner accent
Open Source

Built in public,
open to all.

Filecraft is fully open source under the MIT license. Report bugs, request features, submit PRs — contributions of all sizes are welcome. Check out the contribution guide to get started.

1+Stars
-Forks
1Contributors
Decorative corner accent
PyPI Package

Available on PyPI,
pip-ready.

Install filecraft-cli with pip or pipx in seconds. Published on the Python Package Index, fully versioned with changelogs and semantic releases. Always stable, always auditable.

500+Downloads
v1.1.0Latest
3.10 >Py versions
Decorative corner accent
AUR Package

Available on AUR,
arch-ready.

Install filecraft-cli with pacman in seconds. Published on the Arch User Repository, fully versioned with changelogs and semantic releases. Always stable, always auditable.

filecraftPython pkg
filecraft-binBinary pkg