Skip to content

Commit 4cb8f73

Browse files
docs: fix incorrect README (#6)
- Correct live-demo URL (anksharma11 -> beingmartinbmc GitHub Pages) - Bump documented Node requirement to 22+ to match CI - Add the test/test:watch/test:coverage npm scripts to Quick start - Replace stale 'Tests: none yet' with the real Vitest suite + 85% CI coverage gate - Fix nonexistent useTones reference -> shared useSound hook Co-authored-by: beingmartinbmc <beingmartinbmc@users.noreply.github.com>
1 parent cf7f6d4 commit 4cb8f73

1 file changed

Lines changed: 11 additions & 8 deletions

File tree

README.md

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
An interactive, browser-based playground for learning algorithms, data structures, and Git through animation. Every algorithm runs in the browser as pure TypeScript — no backend, no telemetry, no tracking.
44

5-
**Live demo:** https://anksharma11.github.io/algorithm-visualizer/
5+
**Live demo:** https://beingmartinbmc.github.io/algorithm-visualizer/
66

77
---
88

@@ -27,14 +27,17 @@ An interactive, browser-based playground for learning algorithms, data structure
2727

2828
## Quick start
2929

30-
Requires Node 20+.
30+
Requires Node 22+.
3131

3232
```bash
3333
npm install
34-
npm run dev # Vite dev server with HMR
35-
npm run lint # ESLint (strict; CI blocks on errors)
36-
npm run build # tsc + vite build → docs/ for GitHub Pages
37-
npm run preview # serve the production build locally
34+
npm run dev # Vite dev server with HMR
35+
npm run lint # ESLint (strict; CI blocks on errors)
36+
npm test # run the Vitest suite once
37+
npm run test:watch # Vitest in watch mode
38+
npm run test:coverage # run tests with v8 coverage report
39+
npm run build # tsc + vite build → docs/ for GitHub Pages
40+
npm run preview # serve the production build locally
3841
```
3942

4043
## Architecture
@@ -60,7 +63,7 @@ The pure-TS layer (`algorithms/` or `engine/`) returns arrays of `Step` objects
6063

6164
1. Create `src/features/myThing/`.
6265
2. Write `algorithms/myThing.ts` — a pure function from input → `MyThingStep[]`.
63-
3. Write `hooks/useMyThing.ts``useState` for the step pointer, `setTimeout` (or shared `useTones`) for playback.
66+
3. Write `hooks/useMyThing.ts``useState` for the step pointer, `setTimeout` (or the shared `useSound` hook) for playback.
6467
4. Write `components/MyThingCanvas.tsx` and `MyThingControls.tsx`.
6568
5. Add a `MyThingPage.tsx` that composes the above.
6669
6. Lazy-import the page in `src/App.tsx` and add a `<Route>`.
@@ -98,7 +101,7 @@ npm run build
98101

99102
- **TypeScript:** `tsc -b` passes with zero errors. Strict mode, `verbatimModuleSyntax`, `noUnusedLocals`, `noUnusedParameters`, `erasableSyntaxOnly`.
100103
- **ESLint:** zero errors, zero warnings.
101-
- **Tests:** none yet — pure step-builders in `engine/` and `algorithms/` are the natural targets when added.
104+
- **Tests:** Vitest suite covering the pure step-builders in `algorithms/` (sorting, graph pathfinding, tree traversals, tree generation, linked-list algorithms, random-input helpers). CI runs `vitest run --coverage` and blocks merges below an 85% coverage gate.
102105
- **Bundle:** initial route loads only landing-page + section-index chunks; feature pages are code-split.
103106

104107
## License

0 commit comments

Comments
 (0)