Tools Documentation
Design notes and operating context for the browser tools and small utilities hosted across naterich.net.
Mini Galaxy
browser tool: seeded observatoryMini Galaxy is a browser-only seeded observatory built for this site. It samples a small galaxy, rough stellar populations, planet architectures, and astrobiology-inspired uncertainty without claiming to detect life, confirm exomoons, or simulate orbital physics.
Design
The viewer turns research into light model pressure rather than homework: Kroupa-ish low-mass stars dominate, some rocky worlds are dark or featureless, moonlike signals remain ambiguous, and life is modeled as potential, mobility, volatility, visibility, and detection ambiguity. Vanilla HTML/CSS/JS โ no install step, no server dependency.
The Seeded Cosmos Tree
Three tools, one deterministic lineage: Mini Galaxy samples a whole small galaxy, System Generator collapses a seed into a single stellar system, and World Generator drops to planet scale. Each step zooms in one level; all run entirely browser-side.
Mini Galaxy Controls
A text seed deterministically creates the same field every time. Controls adjust sampled population, spiral traces, disk spread, clumpiness, and the color lens maps.
| control / lens | meaning |
|---|---|
| seed | Any text string. The same seed recreates the same mini galaxy. |
| stars sampled | How many visible points are drawn from the seeded probability field. |
| spiral traces | How much structure is pulled toward arm-like lanes; zero makes a quieter irregular field. |
| disk spread / clumpiness | How broad and patchy the dwarf-sized field feels. |
| habitability / mobility / visibility / ambiguity | Color lenses over model scores, not measurements. |
Labels like microbial niches, moonlike anomalies, and featureless rocks are generated hints, not claims. The viewer deliberately avoids Drake-equation civilization framing.
Sources & Inspiration
Used as light design pressure, not as a claim that the tools are scientifically predictive.
| source | how it shaped the tools |
|---|---|
| Kroupa IMF | Low-mass stars dominate the sampled population; bright massive stars are rare and short-lived. |
| JWST / LHS 3844 b | Some rocky worlds are interesting because they are dark, stripped, featureless, or hard to interpret. |
| JWST Kepler-167e | Long observations still carry trends and noise; exomoon-like signals remain ambiguous. |
| Wonder & Skepticism | Kurzgesagt, Cool Worlds, and STScI: grounded context. |
Limits
Mini Galaxy is not an exoplanet catalog, biosignature classifier, or life detector. Everything is deterministic math on a canvas.
System Generator
browser tool: seeded stellar system + N-bodySystem Generator zooms from the galaxy to a single star. A seed deterministically collapses into one stellar system — star with derived luminosity, radius, effective temperature, snow/water lines — then planets, moons, and belts placed with real-ish orbital mechanics. The same seed always builds the same system.
Beyond the static readout, the system runs as a live N-body orbital solution. The solver bounds what it tracks to stay stable and cheap:
| simplification | what it does |
|---|---|
| Object cap (<500) | Only lower-bound systems get a full N-body solution to ensure smooth rendering. |
| Moon averaging | A planet and its moons collapse into a single barycenter body carrying their combined mass. |
| Debris clustering | Belts and debris are clustered into a small number of noisy representative particles. |
| Stable integrator | A velocity-Verlet step with softening keeps orbits stable over long simulation runs. |
World Generator
browser tool: local orbit-frame body viewerWorld Generator drops from a generated system to a single world — a planet or a moon, both treated as first-class bodies. Pick a body and it elaborates surface composition, atmospheric indicators, and habitability signals deterministically from the same seed lineage. Runs entirely browser-side. (It was previously “Planet Generator”; the old URL now redirects here, preserving the seed.)
Stand in the world's own orbit
The headline view places you in the body's local frame: the world is centred and spinnable (drag to orbit your viewpoint, scroll to zoom), with its primary shown at true angular size. A planet sees its star; a moon sees its host scaled by the angular diameter from the moon's own orbit, plus the sun as a small distant spark. Sky ratios are physical — a host gas giant can loom tens of degrees across while the star is a sub-degree point. For a tidally-locked moon the host hangs fixed while the sun circles over the orbital period, so the day/night sweep is the moon going around its host. The full multi-body picture stays on the System Generator, not here.
One shared physics engine
System Generator and World Generator now run off a single shared core, so “same seed → same world” is true by construction rather than by duplicated formulas. Bodies are sized with the Chen & Kipping (2017) mass–radius relation, placed against a Kopparapu et al. (2013) habitable zone, and tested for tidal locking with the Gladman et al. (1996) timescale. Surfaces are drawn true-colour from composition and luminance only (never the site's theme accents), as flat pixel-art palettes sampled from 3-D noise on the sphere so terrain wraps the poles without a seam — an approach inspired by deep-fold's Pixel Planet Generator. Close-in locked worlds render as eyeball planets: a hot substellar dayside fading to a frozen far side.
Detection-bias lens
Each world is scored for how a real survey would (or wouldn't) catch it: transit depth and geometric probability, radial-velocity semi-amplitude, astrometric wobble, and imaging contrast, each against a nominal modern floor — storytelling thresholds, not an instrument-specific forecast. The point is that detection is a biased sample of what's actually out there: small, long-period, temperate worlds routinely fall below every floor even when present, which is why real catalogues skew so hard toward transit and RV (roughly 75% / 19% of confirmed planets, with microlensing, imaging, and astrometry making up the rest). The System Generator surfaces this as a “what's out there vs. what we'd see” summary with per-planet method badges.
Binary systems
Stellar multiplicity is modelled by primary mass (after Raghavan et al. 2010 / Duchêne & Kraus 2013): roughly a quarter of M dwarfs up to two-thirds of the most massive stars carry a bound companion. A companion truncates the planet-stable zone via the Holman & Wiegert (1999) criterion — close binaries clear the outer planets, wide ones barely perturb them — and appears as a second sun in the sky. Companions are drawn after the planets, so single-star seeds are unchanged.
Character Forge
browser tool: tabletop character builderCharacter Forge builds a level-1 D&D fifth-edition character from open SRD 5.1 content. It walks through abilities, species, class, background, and spells, then renders a printable sheet. State stays in the browser and autosaves locally.
The tool is meant for quick starts and table prep, not account-backed campaign management. It keeps the flow narrow, explicit, and printable so a player can move from blank sheet to usable character without a server dependency.
DM Toolkit
browser tool: table consoleDM Toolkit is a client-side console for running a session: SRD creature lookup, stat blocks, a context-aware NPC generator, dice with advantage and disadvantage, environment and weather prompts, and initiative tracking.
The layout favors dense panes and quick scanning over a decorative campaign dashboard. It is built for live use at the table, with all data and generation happening locally in the browser.
consys on GitHub
latest public release: v1.1.0consys is a compact Rust system monitor built around one constraint: useful machine state should fit in a small, stable, parseable block of text. It skips logos, decorative layout, and terminal personality in favor of direct key-value output that a human can scan and a machine can consume without cleanup.
Design
The engineering target is low overhead without giving up the fields that matter. README benchmarks position consys near the fastest fetch-style tools while still including CPU identification, with far fewer tokens than traditional tools like fastfetch or neofetch. Architecturally it is intentionally small: a single-purpose CLI, Rust implementation, predictable output, and no theming system to preserve.
twig on GitHub
latest public release: v0.2.0twig is a directory tree viewer designed for the point where humans and machines share the same terminal output. It uses plain indentation rather than ASCII branch characters, so the output pastes cleanly into a shell pipeline or LLM context window without noise.
Design
The primary engineering target is token efficiency: twig benchmarks 32–77% fewer tokens than tree on tested directory trees while preserving the shape that makes a tree readable. It is intentionally narrow: a single-purpose CLI, predictable traversal order, no config file, no theming layer. The output is meant to be the same whether a person or a tool reads it.
cmatrix on GitHub
third-party โ by abishekvashokcmatrix is a small C/ncurses program that turns any terminal into the iconic green “digital rain” cascade. It is not my code โ it is credited here because it is the visual that inspired this site’s home-page background.
Why it’s here
The home-page background is a browser-side homage rendered in JavaScript: the same falling-glyph impulse, drawn fresh on a <canvas>, with none of cmatrix’s code. If you want the real thing in your terminal, the upstream project is linked above.