|
1 | 1 | # Code Quest: Python + SQL Trainer |
2 | 2 |
|
3 | | -Learn Python and SQL by playing short, interactive coding challenges. |
| 3 | +[](LICENSE) |
| 4 | +[](https://www.python.org/) |
| 5 | +[](.github/workflows/ci.yml) |
4 | 6 |
|
5 | | -> GitHub tagline: Beginner-friendly Python + SQL learning game with interactive challenges, hints, and progress tracking. |
| 7 | +Code Quest is a beginner-friendly command-line learning game for Python and SQL. It uses interactive challenges, instant feedback, and progress tracking to help users build practical coding and query skills. |
6 | 8 |
|
7 | | -Code Quest is a beginner-focused terminal app designed to make coding practice feel like a game. Players solve Python and SQL tasks, get instant feedback, and build confidence step by step. SQL challenges run on a real SQLite dataset, so learners practice query skills they can actually use. |
| 9 | +## Why this project matters |
| 10 | +- Demonstrates Python programming fundamentals (`dataclasses`, validation logic, file persistence). |
| 11 | +- Demonstrates SQL competency using real query execution with SQLite. |
| 12 | +- Shows product thinking: gamification, hinting, progression, and user feedback loops. |
| 13 | +- Shows software engineering basics: tests, CI workflow, repo documentation, and MIT licensing. |
8 | 14 |
|
9 | | -## GitHub About (Recommended) |
10 | | -- Description: Beginner-friendly Python + SQL learning game with interactive challenges, hints, and progress tracking. |
11 | | -- Website: https://github.com/kp147852-droid/Code-Quest-Python-SQL-Trainer |
12 | | -- Topics: python, sql, sqlite, education, cli-game, beginner-friendly, learning-by-doing |
| 15 | +## Role relevance (for hiring) |
| 16 | +- Business Analyst: SQL filtering/aggregation patterns, data reasoning, and clear user flows. |
| 17 | +- Data Scientist: data manipulation mindset, query literacy, and iterative problem solving. |
| 18 | +- AI/ML Roles: core coding fluency, debugging discipline, and structured evaluation logic. |
| 19 | + |
| 20 | +## Features |
| 21 | +- Python challenge mode with retry + hint support. |
| 22 | +- SQL challenge mode with executable queries against an in-memory SQLite dataset. |
| 23 | +- Scoring system (+10 Python, +15 SQL) and unlocked progression. |
| 24 | +- Local progress persistence in `progress.json`. |
| 25 | +- Reset option for repeated practice. |
13 | 26 |
|
14 | | -## What it does |
15 | | -- Gives step-by-step Python challenges. |
16 | | -- Gives SQL challenges against a real SQLite dataset. |
17 | | -- Tracks score and progress in `progress.json`. |
18 | | -- Lets players retry with hints. |
| 27 | +## Tech stack |
| 28 | +- Python 3 |
| 29 | +- SQLite (standard library `sqlite3`) |
| 30 | +- JSON persistence |
| 31 | +- GitHub Actions-ready CI configuration |
19 | 32 |
|
20 | | -## Run |
| 33 | +## Quick start |
21 | 34 | ```bash |
22 | 35 | cd "/Users/kyleparker/Documents/code game" |
23 | 36 | python3 main.py |
24 | 37 | ``` |
25 | 38 |
|
26 | | -## Game flow |
| 39 | +## Example game loop |
27 | 40 | 1. Pick Python or SQL challenge. |
28 | | -2. Enter your answer/query. |
29 | | -3. Get instant feedback and hints. |
30 | | -4. Earn points and unlock the next challenge. |
| 41 | +2. Submit answer or SQL query. |
| 42 | +3. Receive immediate feedback (and hints if needed). |
| 43 | +4. Earn points and continue to the next level. |
| 44 | + |
| 45 | +## Repository structure |
| 46 | +- `main.py` - menu and game loop. |
| 47 | +- `game.py` - challenge logic, scoring, SQLite setup, persistence. |
| 48 | +- `tests/test_game.py` - unit tests for core behavior. |
| 49 | +- `.github/workflows/ci.yml` - automated test run on push/PR. |
| 50 | + |
| 51 | +## Suggested GitHub "About" settings |
| 52 | +- Description: Beginner-friendly Python + SQL learning game with interactive challenges, hints, and progress tracking. |
| 53 | +- Website: <YOUR_PORTFOLIO_OR_LINKEDIN_URL> |
| 54 | +- Topics: `python`, `sql`, `sqlite`, `business-analyst`, `data-science`, `ai-learning`, `education`, `cli-game` |
| 55 | + |
| 56 | +## Portfolio talking points |
| 57 | +- Built an educational CLI product that maps technical exercises to measurable progression. |
| 58 | +- Designed challenge validation logic for both Python and SQL with constrained retries and hints. |
| 59 | +- Added test coverage and CI to keep behavior reliable as feature scope grows. |
| 60 | +- Documented recruiter-discovery steps in [CAREER_VISIBILITY.md](CAREER_VISIBILITY.md). |
31 | 61 |
|
32 | | -## Ideas to expand |
33 | | -- Add more levels and difficulty modes. |
34 | | -- Add timer/leaderboard features. |
35 | | -- Add multiplayer quiz mode. |
36 | | -- Add web UI (Flask/Streamlit) later. |
| 62 | +## Roadmap |
| 63 | +- Add intermediate and advanced challenge packs. |
| 64 | +- Add analytics export (CSV) for learner performance tracking. |
| 65 | +- Add optional web UI (Streamlit or Flask). |
| 66 | +- Add LLM-assisted hints for dynamic coaching. |
37 | 67 |
|
38 | 68 | ## License |
39 | | -This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details. |
| 69 | +This project is licensed under the MIT License. See the [LICENSE](LICENSE) file. |
0 commit comments