You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A multi-call binary for Windows CLI utilities. File management, code interpretation, project scaffolding, and system tools — all from a single command set.
Just Utility is a collection of Windows CLI utilities packaged as individual executables — think of it as a miniature BusyBox for Windows. Each command wraps a common task (file operations, compiling code, network queries, project scaffolding) into a single cmd callable binary.
What It Does
Manage files — list, move, copy, delete, and inspect files with concise commands (ls, mv, rm, cat, fp, cf, lc)
Interpret code — compile and run C, C++, C#, and Java source files in one step (cci, cppi, csi, jvi)
Scaffold projects — generate skeleton directories for Java, Python, web, JS, PHP, and C/C++ projects (ctp)
Build Java projects — initialize, compile, package JARs, generate docs, and run with or without dependencies (jpb)
Query the system — display WiFi profiles, file properties, date/time, and locate files (wif, fp, dt, lc)
Launch tools — open Chrome with DevTools, Snipping Tool, File Explorer, and browser URLs (chrome-dev, snip, xr, wr)
Run remote scripts — execute Python/PHP scripts and JARs from predefined directories (pyr, jr, arts)
Assist Android dev — connect ADB, push/pull projects, install APKs, and run apps on devices (droid)
Why Use It?
Problem
How Just Utility Solves It
Remembering long Windows commands
Single short commands: ls instead of dir /B /O-D
Compiling + running code repeatedly
One-step interpreters: cci hello compiles and runs hello.c
Setting up project structures
ctp java myapp creates the full directory skeleton
Managing Java projects without an IDE
jpb initializes, compiles, packages, and runs from the terminal
Finding WiFi passwords
wif lists profiles and reveals the key with one command
Opening browser + DevTools
chrome-dev <url> launches Chrome with devtools auto-opened
The Philosophy
Minimal typing, maximum output. Every command is short and does exactly what you expect.
Built on what's already there. Where possible, commands wrap built-in Windows utilities (type, dir, netsh, fsutil, findstr).
Your workflow stays yours. No lock-in — each binary is independent and can be copied, renamed, or used standalone.
Use Cases
Scenario
How Just Utility Helps
You're learning C/C++/Java/C#
cci, cppi, jvi, csi compile and run your source in one command, measuring time
You frequently create project templates
ctp generates the full directory tree for any language in seconds
You work with Java from the terminal
jpb handles init, package creation, compilation, and JAR packaging
You need WiFi credentials in a pinch
wif shows all profiles and prints the key in clear text
You manage Android devices
droid connects via ADB, installs APKs, and runs apps automatically
# Prerequisites: LLVM/clang++ and GNU Make
git clone https://github.com/marcuwynu23/just-utility.git
cd just-utility
make all
Binaries will be in dist/.
Verify
justutil --help
Quick Start
# List available commands
justutil
# List files in current directory
ls
# Create a file
cf hello.txt
# Display its contents
cat hello.txt
# Compile and run a C program
cci hello
# Compile and run a Java program
jvi Hello
# Open File Explorer
xr
# Get WiFi info
wif
# Show help for any command
ls --help
CLI Reference
All commands accept --help or -h for detailed usage. Below is a quick overview.
See the full user guide for detailed documentation of every command, flag, and example.
Development
Prerequisites
Tool
Version
Purpose
LLVM/clang++
18+
C++ compiler
GNU Make
3.81+
Build system
Git
Any
Version control
Build
make all # Build all 26 binaries
make clean # Remove built binaries
Test
tests\run.ps1 # Run the test suite
Project Structure
just-utility/
├── dist/ # Built binaries
├── docs/ # HTML documentation
│ └── index.html # Command listing (categorized)
├── src/ # Source files
│ ├── <cmd>.cpp # One file per command
│ ├── runner.cpp # Shared runtime utility
│ ├── include/
│ │ └── runner.h # Shared header
│ └── droidroid/ # Android device helper
├── tests/ # PowerShell test suite
├── Makefile # Build system
└── README.md
Coding Standards
C++17
One .cpp file per command
All commands include runner.h
Use peculiar::runExe() for system calls
showHelp() static function for --help output
Man-page style help with sections: NAME, SYNOPSIS, DESCRIPTION, OPTIONS, ARGUMENTS, DEPENDENCIES, EXAMPLES
Architecture
Multi-call binary pattern. Each command is a standalone .exe sharing a common runtime (runner.cpp / runner.h).
System call abstraction.peculiar::runExe() wraps system() with thread-safe logging.
Windows-native. Commands use built-in Windows utilities (type, dir, netsh, fsutil, findstr, explorer) and standard system compilers (clang, javac, csc).
Self-documenting. Every command implements --help with man-page style output and has a corresponding HTML documentation page.
LLVM toolchain. Built with clang++ targeting x86_64-pc-windows-msvc.
Contributing
See CONTRIBUTING.md for full details on how to contribute, including the commit convention, PR process, and development workflow.
A compact, automated command-line tool for Windows written in C++ with built-in and 3rd party utilities. Simplifies navigation, learning, and project development, including simple networking.