Note
This is a CLI Wrapper developed strictly for learning and practicing C# and .NET 10. The primary focus was exploring process manipulation and building abstraction layers over the operating system. However, I intend to continue the project to meet the productivity needs that inspired its creation.
Warning
As a study project, this interacts directly with your CMD. It was built to test low-level logic and productivity. Feel free to clone, study the code, and propose improvements to the command mappings.
Genesis is an alternative designed for developers who constantly switch between Linux and Windows and don't want to lose productivity by changing command syntax. It acts as a Kernel Interceptor that translates Unix-like commands into native Windows (CMD) calls in real-time.
- Process Manipulation: Extensive use of
System.Diagnosticsto orchestrate child processes with zero perceived latency. - State Persistence: Custom logic to keep the current directory (
cd) persistent within the wrapper—something CMD doesn't natively do in sub-processes. - Engine Integration: A bridge that converts
sudo apt installsyntax directly into the Winget engine. - .NET 10 Performance: Testing the cutting-edge speed and memory management capabilities of the latest framework version.
The focus was on translating what a developer uses most in their daily workflow:
| Category | Translated Linux Commands |
|---|---|
| Files | ls, ll, la, cat, rm, rm -rf, cp, mv, touch, mkdir, pwd |
| Network | ifconfig, ping, ssh, curl, wget, traceroute, nslookup |
| System | top, ps, kill, free, df, uptime, whoami, man, history |
| Sudo (Admin) | sudo apt install, sudo apt search, sudo apt update, sudo adduser |
To be more than just a black box, the terminal features:
- Boot Sequence: Simulated kernel loading sequence.
- Custom Neofetch: Displays hardware, uptime, and OS version with perfect alignment.
- Smart Prompt: Unix-style path display using
/and~for the home directory.
- Ensure .NET 10 SDK is installed on your machine.
- Ensure Winget (native on Win 10/11) is available for installation commands.
- Clone the repository and run:
dotnet run