Draw a shape or pick a preset, then rebuild it with a direct DFT. Each frequency becomes one circle. Circles are sorted by radius, and the circles slider keeps the biggest N. Also tick the ROADMAP item and add the FOURIER SEO key.
28 lines
1.8 KiB
Markdown
28 lines
1.8 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).
|
|
- [ ] **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 + gzip**: no CSP, `X-Content-Type-Options`, `Referrer-Policy`, `frame-ancestors` and no `gzip` in `nginx.conf`. First check with `curl -I https://app.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
|
|
|
|
- [ ] **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):
|
|
- [ ] Boids / flocking (GPU path like cloth)
|
|
- [ ] Voronoi / Delaunay
|
|
- [x] A* vs Dijkstra side by side (reuse pathfinding)
|
|
- [x] Fourier epicycles
|
|
- [ ] Reaction-diffusion (Gray-Scott) shader (reuse the fractal shader setup)
|