How programmersagara-cell/sqlprof works
SQL·LAB is a static, browser-based SQL learning workbench. The main workflow is learner → practice workspace → SQL editor → local SQLite execution → displayed results; challenge attempts also run a reference solution and compare result sets before updating local progress. Separate learning, cheat-sheet, database-explorer, and query-history capabilities support that workflow. The graph reflects sampled call sites and README-documented features; some view-to-content wiring is inferred from module responsibilities, while unsampled implementation details are omitted.
Main entry points: practice.js Practice Workspace · main.js Bootstrap & Navigation · views.js Learning Views · sqlEngine.js SQLite WASM Engine
Components 19
Application
- Bootstrap & Navigation
src/main.js - Practice Workspace
src/ui/practice.js - Learning Views
src/ui/views.js - UI Helpers
src/ui/helpers.js - SQL Editor
src/editor/editor.js
Learning Content
- Challenge Registry
src/challenges/index.js - Lesson Content
src/lessons/lessons.js - Cheat Sheet Content
src/cheatsheet/cheatsheet.js - Result Validator
src/validation/validator.js
SQL Runtime
- SQLite WASM Engine
src/engine/sqlEngine.js - Database Registry
src/data/databases.js - Company Schema
src/data/companyDb.js - Other Sample Schemas
src/data/otherDbs.js
Local State
- Progress & Rewards
src/progress/progress.js - Query History
src/history/history.js
Other components
- Learner
- Browser localStorage
- sql.js CDN
- CodeMirror CDN
Connections 28
- Learner → Bootstrap & Navigation: opens app
- Bootstrap & Navigation → Practice Workspace: initializes workspace
- Bootstrap & Navigation → Learning Views: renders views
- Bootstrap & Navigation → SQLite WASM Engine: initializes database
- Bootstrap & Navigation → SQL Editor: sets theme
- Bootstrap & Navigation → UI Helpers: shows errors
- Learner → Practice Workspace: writes queries
- Practice Workspace → SQL Editor: reads SQL
- Practice Workspace → SQLite WASM Engine: executes SQL
- Practice Workspace → Result Validator: checks attempts
- Result Validator → Practice Workspace: returns outcome
- Practice Workspace → Challenge Registry: loads challenges
- Practice Workspace → Progress & Rewards: records attempts
- Practice Workspace → Query History: manages history
- Practice Workspace → UI Helpers: renders feedback
- Learning Views → Lesson Content: reads lesson content
- Learning Views → Cheat Sheet Content: reads reference content
- Learning Views → Challenge Registry: lists challenges
- Learning Views → Progress & Rewards: shows progress
- SQLite WASM Engine → Database Registry: loads schema
- Database Registry → Company Schema: uses schema
- Database Registry → Other Sample Schemas: uses schemas
- Progress & Rewards → Challenge Registry: counts challenges
- Progress & Rewards → Browser localStorage: persists progress
- Query History → Browser localStorage: persists queries
- Bootstrap & Navigation → Browser localStorage: persists theme
- SQLite WASM Engine → sql.js CDN: loads WASM
- SQL Editor → CodeMirror CDN: uses editor library