ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
An interactive learning studio that shows how a relational database runs a query, from parsing to page reads.
EducationTypeScript · CSSGitHub @Hankish1995OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Inside the Database: an interactive studio that visualizes how PostgreSQL runs queries
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
An interactive learning studio that shows how a relational database answers a query: the client sends SQL, the parser builds a tree, the planner picks a plan, the executor walks a B-tree index, the buffer pool is checked, and a cache miss reads the page from disk.Read the full README ↗An interactive learning studio that shows how a relational database answers a query: the client sends SQL, the parser builds a tree, the planner picks a plan, the executor walks a B-tree index, the buffer pool is checked, and a cache miss reads the page from disk.
It has two halves:
users table: index lookups, the buffer pool, disk reads, new row versions (MVCC), dirty pages, WAL records and the commit flush, including a duplicate-key failure.| Page | What it does |
|---|---|
| Learn | Query flow animation, plus six hands-on labs: Composite indexes, Tuple layout (pageinspect), ACID, MVCC (row versions + snapshot explorer), Write-ahead logging (pg_walinspect) and Crash recovery (a real crash and WAL replay) |
| Practice | SQL Lab: an editor over a sample shop database, 50+ runnable examples (joins, CTEs, window functions, MERGE, views, materialized views, functions, procedures with COMMIT, all trigger kinds, event triggers, transactions and savepoints, indexes, partitioning, JSONB, full-text search, LISTEN/NOTIFY, row-level security, cursors, prepared statements) and a live schema browser |
| Visualize | Runs EXPLAIN (ANALYZE, BUFFERS, FORMAT JSON) and draws the real plan tree, with per-node timing and explanations |
| Challenges | 12 exercises, checked by running your SQL and a reference solution on two fresh databases |
npm install
npm run dev # http://localhost:3000
npm run lint
npm run typecheck
npm test # runs every example, lab step and challenge against real PostgreSQL (Node)
npm run build
prefers-reduced-motion setting is also respected).An interactive simulation of a pgvector HNSW index -- PostgreSQL has no vector index of its own; the pgvector extension adds the vector type and the hnsw index, and SET hnsw.ef_search = N (default 40) controls the search at run time. No database or network is involved.
The header has two switches: Light / Dark and English / हिन्दी. On a first visit the theme follows the OS setting; an explicit choice is saved in localStorage (itd.theme, itd.locale) and applied by a small inline script before the first paint, so there's no flash of the wrong theme or language. Switching never resets the lesson, query, playback position, lab progress or HNSW settings: the same run is simply re-worded.
In Hindi, all interface text, lesson content (definitions, lab steps, examples, challenges), the Query flow and HNSW narration, validation errors, visualization labels and aria labels are translated. SQL, code, identifiers, setting names (ef_search) and product names stay in English; common technical terms are kept in English and explained in Hindi where they first appear.
SELECT * | col[, col...] FROM users WHERE id = <integer>
INSERT INTO users (name, email[, id, created_at]) VALUES (...)
UPDATE users SET name | email | created_at = '...'[, ...] WHERE id = <integer>
DELETE FROM users WHERE id = <integer>
Columns: id, name, email, created_at. The users table holds ids 1-56 (14 rows per 8 KB page, pages 15-18); other ids return an empty result. Anything else gets an inline explanation.
| Path | Responsibility |
|---|---|
src/lib/db/ | PGlite engine loading, seeded snapshots, the statement splitter/runner, catalog queries, the crash helper and the challenge checker. |
src/content/examples/, src/content/labs/, src/content/challenges.ts | The SQL Lab examples, lab lessons and challenges (all covered by npm test). |
src/lib/plan/ + src/components/plan/ | EXPLAIN JSON parsing and the plan tree. |
src/lib/hnsw/ | The HNSW lesson's model: the fixed 2D dataset and graph (built by HNSW insertion), the traced layer search, exact search, recall and the per-step animation frame. No rendering code. |
src/components/vector/, src/hooks/useHnswDemo.ts, src/content/vectorConcepts.ts | The HNSW lesson's SVG stage, inspector, state and glossary. |
src/lib/sim/ | The Query flow simulation: mock data, the SQL subset parser, the step builder and the derived scene state. No rendering code. |
src/content/ | Concept definitions, lessons and the inspector's per-run facts. |
src/hooks/usePlayback.ts | Automatic timing, pause/resume, replay and seek. |
src/hooks/useWorkspace.ts | Workspace state: lesson, query, options, selection, settings. |
src/components/scene/ | React Three Fiber scene (client-only, loaded with ssr: false). Labels are DOM elements in an overlay, positioned each frame by a projector without React re-renders. |
src/components/diagram/ | 2D diagram: fallback and small-screen view. |
src/components/{stage,inspector,playback,editor,lessons,topbar}/ | The workspace panels. |
src/lib/prefs.ts, src/lib/prefsScript.ts, src/components/prefs/ | Theme and language: the preference store (<html data-theme lang> is the source of truth), the no-flash head script and the header switches. Theme colours are CSS variables in globals.css, redefined under [data-theme="dark"]; the 3D scene reads its palette from usePalette(). |
src/i18n/ | Interface text: messages/en.ts defines every key (and the type), messages/hi.ts must match it; components call useMessages(). |
src/content/hi/, src/content/localized.ts | Hindi lesson content as text-only overlays keyed by the English ids (SQL and checks are never duplicated); useContent() returns the content in the current language. |
src/lib/sim/text/, src/lib/hnsw/text.ts, src/content/runFactsText.ts | Narration packs (English and Hindi) for the Query flow steps, parser errors, the HNSW search and the inspector's per-run facts. |