agents.md was the working spec for this project, and Codex used it as the source brief to create the app. It defined the product goal, the technical constraints, the stack, the required features, and the UI direction before implementation started.
Specifically, it was used to lock in:
- A browser-based SQL practice app for data analysts and SQL learners
- A single-file build in
index.html - Vanilla HTML, CSS, and JavaScript only
sql.jsfor running SQLite fully in the browser- Business-relevant SQL challenges over an e-commerce dataset
- A clean professional UI with a dark editor and light results panel
In practice, Codex read agents.md, translated that brief into the app structure, and then implemented the project in index.html. That kept the build aligned with the requested architecture, SQL-learning use case, and UI style instead of inventing a different scope.
Short summary:
agents.mddescribed what the app should be- Codex used that file as the implementation brief
- The final project was built to match that spec as closely as possible
Browser-based SQL practice app for aspiring data analysts and data science learners. The app runs SQLite entirely in the browser with sql.js, ships as a single index.html file, and uses a realistic e-commerce dataset for business-style SQL challenges.
This project was built as a lightweight SQL training environment with:
- Vanilla HTML, CSS, and JavaScript
sql.jsfrom CDN for in-browser SQLite- No backend
- No frameworks
- A single-page UI inside
index.html
The app includes:
- Sample e-commerce tables:
customers,products,orders - Realistic seed data
- 6 SQL challenges across Beginner, Intermediate, and Advanced
- Difficulty-based navigation
- SQL execution and results rendering
- Result validation against expected answers
- A gated
Show Answerbutton after the user attempts a challenge
When the page loads, the app initializes SQLite in memory with sql.js, creates the sample schema, and inserts the dataset directly from JavaScript arrays embedded in index.html.
Each challenge contains:
- A title
- A business question
- A hint
- A starter SQL scaffold
- An expected SQL query used to compute the expected result
When the user runs a query, the app:
- Executes the SQL against the in-memory database.
- Renders the result as a table.
- Runs the expected SQL for that challenge.
- Compares the two result sets.
- Shows
✅for a correct match or❌otherwise.
No install step is required.
- Open
index.htmlin a browser. - Wait for
sql.jsto load from CDN. - Pick a difficulty.
- Write SQL and run the challenge.
index.html: the full application, styling, data, and challenge logicagents.md: the project brief used to guide implementationsql-practice-app-screenshot.png: screenshot used in this README
This structure keeps the project easy to understand and easy to share:
- No local server required
- No package manager required
- No build step required
- Easy to host as a static page
- Easy to inspect for learning purposes
- Add more challenge packs
- Track progress in
localStorage - Add schema explorer and sample row previews
- Add query formatting and keyboard shortcuts
- Add tests for result comparison logic
