Files
playground-frontend/ROADMAP.md
T
lobo d298108516 feat(fluid): add Stable Fluids demo on float textures
Velocity runs on a 128x128 grid and dye on 512x512.
Walls are free-slip: shaders clamp coordinates to the field.
Drag pushes the fluid and adds dye. Idle time adds random splats.
Tick the fluid item in ROADMAP.md.
2026-10-23 14:09:42 +02:00

35 lines
2.4 KiB
Markdown

# Roadmap
Open ideas for the playground frontend. Tick a box when done.
## Quick wins
- [ ] **Labyrinth grid size crash**: `labyrinth.component.html` still binds `[gridRows]`; typed sizes above the max crash the page. Same fix as pathfinding (clamp in code, drop the binding).
- [ ] **Fourier circles slider thumb**: at "Circles: 256" the thumb sits near the left end, like at 30. Check `max`/value binding of the circles `mat-slider` (seen 2026-10-14, not verified).
- [ ] **Lighthouse gate**: add an `assert` block to `lighthouserc.json` (e.g. performance, accessibility, SEO >= 0.9). Today CI runs the audit but never fails.
Note: the `@lhci/cli` → lighthouse 13 override in `package.json` is only safe without `assert`. Check it again before you add one.
- [ ] **robots.txt + sitemap.xml**: static files in `public/`, listing all routes from `app.routes.ts`.
- [ ] **SEO per algorithm page**: all algorithm routes use `data: { seo: 'ALGORITHMS' }`. Give each one its own key and add `SEO.<KEY>.TITLE` / `DESCRIPTION` to `en.json` and `de.json`.
- [ ] **nginx security headers**: no CSP, `X-Content-Type-Options`, `Referrer-Policy`, `frame-ancestors` in `nginx.conf` (gzip done). First check with `curl -I https://andreas-dahm.eu/` if the reverse proxy already sets them.
## Tests
- [ ] `seo.service.ts`: spec for title/meta update on route change and language change.
- [ ] Pure logic without specs: `pathfinding-animator.ts`, cloth and pendulum GPU strategies (the math around them, not the shaders), `fractal3d`.
## Features
- [ ] Lenia: display zoom so small creatures (e.g. Orbium bicaudatus tails) are visible
- [ ] **Shareable demo state**: keep demo settings in query params (fractal zoom/center, sorting algorithm, seeds). Opening the link restores the view.
- [ ] **New algorithm demos** (pattern: route + `RouterConstants` + `AlgorithmsService` entry + i18n + information panel):
- [x] Boids / flocking (GPU path like cloth)
- [x] **Physarum** (slime mold transport networks, trail map on GPU compute, CPU fallback)
- [ ] Boids 3D (later, 2D done)
- [ ] Voronoi / Delaunay
- [x] A* vs Dijkstra side by side (reuse pathfinding)
- [x] Fourier epicycles
- [x] Reaction-diffusion (Gray-Scott) shader (reuse the fractal shader setup)
- [x] **Lenia** (continuous Game of Life, shader ping-pong like Gray-Scott)
- [x] **Fluid (Stable Fluids)** (velocity, pressure and dye shader ping-pong like Lenia)
- [x] **Ant colony** (ACO on TSP, CPU + Canvas 2D)