vasu 0.0.0

Ankit Chaubey's personal power toolkit — blazing fast file ops, clipboard magic & more
vasu-0.0.0 is not a library.
  ██╗   ██╗ █████╗ ███████╗██╗   ██╗
  ██║   ██║██╔══██╗██╔════╝██║   ██║
  ██║   ██║███████║███████╗██║   ██║
  ╚██╗ ██╔╝██╔══██║╚════██║██║   ██║
   ╚████╔╝ ██║  ██║███████║╚██████╔╝
    ╚═══╝  ╚═╝  ╚═╝╚══════╝ ╚═════╝

Ankit Chaubey's personal power toolkit — written in Rust ⚡

Crates.io License: MIT CI


Install

From crates.io

cargo install vasu

Download binary (no Rust needed)

Platform Download
Linux x86-64 vasu-linux-x86_64
Linux ARM64 vasu-linux-aarch64
Android / Termux vasu-android-aarch64
macOS Apple Silicon vasu-macos-arm64
macOS Intel vasu-macos-x86_64
Windows vasu-windows-x86_64.exe

Termux (Android) quick install

curl -Lo vasu https://github.com/ankit-chaubey/vasu.io/releases/latest/download/vasu-android-aarch64
chmod +x vasu
mv vasu $PREFIX/bin/

Commands

vasu

Show the banner, version, and all available commands.


vasu del <keep…>

Delete everything in CWD except the listed items.

vasu del .git vasu       # keeps .git/ and vasu/, nukes the rest
vasu del .git vasu -y    # skip confirmation

vasu cp <src> <dst>

Deep-copy a folder — hidden files, symlinks, permissions included.

vasu cp project/  backup/
vasu cp /tmp/a    /tmp/b  --overwrite

vasu cb [targets…]

Copy file contents to clipboard. Falls back to stdout in headless environments (Termux).

vasu cb *                         # everything in cwd recursively
vasu cb *.rs *.toml               # globs
vasu cb src/ README.md            # mix of dir + file
vasu cb doc video . xyz/op.html   # exact list

vasu tree [dir] [-d depth] [-a]

Pretty colored directory tree.

vasu tree
vasu tree src/ -d 3
vasu tree -a               # show hidden files

vasu find <pattern> [dir] [-t f|d|all]

Find files/dirs by name pattern (supports *).

vasu find "*.rs"
vasu find "config*" src/ -t f

vasu size [dir] [-n 20]

Disk usage per item, sorted largest first.

vasu size
vasu size ~/Downloads -n 10

vasu clean [dir] [-y]

Remove __pycache__, .pyc, .DS_Store, target/, .pytest_cache, build junk, etc.

vasu clean
vasu clean my_project/ -y

vasu zip <src> [out.zip] / vasu unzip <archive> [dest]

Archive and extract.

vasu zip my_project/
vasu unzip release.zip extracted/

vasu rename <pattern> <replacement> [dir] [-n]

Bulk rename files (string replace in filenames).

vasu rename " " "_"           # spaces → underscores
vasu rename ".jpeg" ".jpg"
vasu rename "test_" "" src/ --dry-run

vasu count [dir] [-e ext]

Count files + lines of code by extension.

vasu count
vasu count src/ -e rs -e toml

vasu hash <file>

Show MD5 + SHA256.

vasu hash release.zip

vasu backup [src] [--dest dir]

Timestamped zip backup.

vasu backup
vasu backup my_project/ --dest ~/backups/

vasu env [filter]

Print env vars, optionally filtered.

vasu env
vasu env PATH

vasu http [port] [dir]

Zero-dependency HTTP file server with directory listing.

vasu http
vasu http 3000
vasu http 9000 dist/

vasu diff <a/> <b/>

Compare two directories.

vasu diff v1/ v2/

vasu dupe [dir]

Find duplicate files by MD5 hash.

vasu dupe ~/Downloads

Releasing a new version

# 1. Bump version in Cargo.toml
# 2. Commit + tag
git add Cargo.toml Cargo.lock
git commit -m "chore: bump to v0.1.0"
git tag v0.1.0
git push && git push --tags
# ✅ GitHub Actions builds binaries for ALL platforms + publishes to crates.io

First time crates.io setup: Get a token at https://crates.io/settings/tokens Add it as a GitHub secret named CARGO_REGISTRY_TOKEN


Build from source

git clone https://github.com/ankit-chaubey/vasu.io
cd vasu.io
cargo build --release
# binary at: ./target/release/vasu

License

MIT © Ankit Chaubey