hello, world.
how i overengineered my personal website into an ascii solar system with moving planets, moons, and a galaxy view.
i wanted my portfolio to feel alive and interactive. it started with a prompt input that changed the theme. the first model compared prompts with descriptions of themes and visual styles, but used too much memory for changing colours. another approach matched prompts to predefined palettes, either with a small embedded model or direct keywords like “forest” and “blue”. after a lot of stellaris, the dynamic theme gave way to a gruvbox ascii solar system, which grew into detailed planet views and a zoomed-out milky way. the planets follow jpl's approximate positions, with j2000 orbital elements and a kepler solver calculating their paths. close-ups generate each surface from rules instead of loading a finished texture. drawing around 1,300 solar-system particles and around 4,900 galaxy particles meant reusing glyphs, adding a webgl path, limiting the canvas pixel ratio, caching the distant galaxy, and skipping invisible work. making the scene work on phones also took touch and keyboard controls and reduced-motion support. webassembly came up too, but it would not make the canvas draw faster.