A 3D ASCII solar system rendered live in your terminal. The Sun and all eight planets orbit on the ecliptic with real relative orbital periods, projected through a configurable camera and drawn with ANSI truecolor.
- Sun and all eight planets with real relative orbital periods (Earth completes an orbit every 60 sim-seconds)
- Depth-sorted rendering so nearer bodies draw on top
- Radial sun gradient with a soft outer glow
- Dim orbit rings for each planet
- Configurable camera: pitch, yaw, zoom, and a top-down map view
- Adjustable simulation speed and frame rate
- Optional monochrome (no-ANSI) mode
- Rust edition 2021 (Rust 1.62+)
- A terminal that supports ANSI truecolor (24-bit color) and alternate-screen buffers
cargo build --releaseThe binary is produced at target/release/solar-ascii.
solar-ascii [OPTIONS]Just run it to watch the system from a default angled view.
| Option | Description | Default |
|---|---|---|
-s, --speed <SPEED> |
Simulation speed multiplier (0 pauses) |
1.0 |
--top-down |
View from directly above the ecliptic | off |
-p, --pitch <PITCH> |
Camera elevation above the ecliptic, in degrees | 30.0 |
--yaw <YAW> |
Camera rotation around the system, in degrees | 0.0 |
--zoom <ZOOM> |
Zoom factor (larger = closer/bigger) | 1.0 |
-f, --fps <FPS> |
Target frames per second | 30 |
--size <WxH> |
Override render size as WxH (e.g. 120x40); defaults to terminal size |
terminal size |
--no-color |
Disable ANSI color (monochrome output) | off |
qorEsc— quitCtrl-C— quit
# Top-down map of the whole system
solar-ascii --top-down
# A faster, tighter view of the inner planets
solar-ascii --speed 5 --zoom 1.5 --size 100x30
# Monochrome output
solar-ascii --no-colorMIT