G33kShell is a cross-platform retro-themed desktop shell that wraps a CRT aesthetic around a custom command experience.
- Boot-up BIOS prelude, login theatrics, and optional webcam face detection.
- Powered by Avalonia on .NET for cross-platform hardware-accelerated rendering with crisp pixel fonts and shader-based scanlines.
- Extensive built-in command set spanning navigation, search, system info, automation, and novelty utilities.
- Inline
man
pages, persistent history, and settings that remember your favorite skins, screensavers, and working directories. - Skin system with
RetroPlasma
,RetroGreenDos
,RetroMonoDos
, andSimpleSkin
. - Idle timeout hands ownership to animated ASCII and pixel-art screensavers — many driven by AI brains you can train live.
- Navigate your filesystem with
dir
,tree
,cd
,pushd
,popd
,paths
, andlocation
. - Inspect and manipulate files via
cat
,tail
,copy
,rm
,mkdir
,find
,grep
,whereis
, andopen
. - Integrate with the OS using
reveal
,space
,clip
,now
,ver
,worktime
,shutdown
, andmax
. - Customize the experience with
skin
,screensaver
,man
,help
,history
, and the CP437ASCII
table.
Tip: run man <command>
for auto-generated manual pages, or help
to see every command and alias.
Cycle anything you like with screensaver -l
and screensaver <name>
—add _train
to the AI-powered ones to watch them learn in real time.
asciiroids
,boids
,bounce
,clock
,conway
,crystal
,cube
,defrag
donut
,earth
,fire
,fluid
,lemmings
,mandelbrot
,matrix
,neo
plasma
,pong
,scroller
,snake
,stars
,swirl
,tbibm
,terminator
tiefighter
,tunnel
,twister
,willy
,worms
,xenon
AI-enabled screensavers (asciiroids
, pong
, snake
) store their trained neural weights between runs so you can pick up right where your last session left off.
- Install the .NET 8 SDK.
- Clone the repo and restore dependencies:
dotnet restore
. - Launch the desktop shell:
dotnet run --project G33kShell.Desktop
.
The application persists settings (skin, screensaver, path history, trained brains) under your user profile. Delete the settings file if you ever want a clean slate.
- Run the unit suite with
dotnet test
from the repo root. - Avalonia assets live under
G33kShell.Desktop/Assets
; screensavers underG33kShell.Desktop/Console/Screensavers
. - To build your own screensaver, implement
IScreensaver
, expose a uniqueName
, and drop the class into the screensavers folder —screensaver -l
will pick it up automatically.
MIT © Dean Edis. See LICENSE
for details.