hristo2612/SQLNoir
hristo2612/SQLNoir has 1,679 GitHub stars and 75 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-08 02:58 UTC. Last push 2026-10-28.
Solve mysteries through SQL.
Measured star growth
- in 24h
- 0
- in 7 days
- Collecting history
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalSQL Noir 🔍
➡️ Play the game online at sqlnoir.com
Step into the shoes of a real detective and solve crimes using SQL! SQL Noir is an interactive mystery-solving game where you crack cases by writing SQL queries.
Localizations
SQLNoir is available in:
- English — original
- Português (Brasil) — community contribution
- 简体中文 (Simplified Chinese) — adapted and culturally localized by Lloyd Hasson. Lloyd is a teacher in China who built a complete Chinese SQLNoir from scratch for his classroom — translating every case into immersive Mandarin (with localized character names, Shanghai settings, and even Chinese-named SQL tables and columns) — then generously donated the work to the official project. The zh-CN version exists thanks to his pedagogical care and creative adaptation. 谢谢你,Lloyd!
About
Welcome to SQL Noir, where you're a data detective solving criminal cases through the power of SQL. Each case file presents you with a unique crime scenario and a database full of evidence. Your mission is to:
- Uncover suspicious patterns in the data
- Track down missing records
- Connect the dots between suspects
- Expose fraudulent transactions
- Piece together the evidence using SQL
Getting Started
Prerequisite: Node.js 18.17+ (Next.js requirement).
Clone this repository
Install dependencies:
npm installGo to Supabase and create a new project
Copy the generated
anon public keyandProject URLfrom the projectCreate a
.env.localfile at the root of the project and set the following environment variables:NEXT_PUBLIC_SUPABASE_ANON_KEY=your_anon_key NEXT_PUBLIC_SUPABASE_URL=your_supabase_url(Legacy
VITE_variables are still read, but usingNEXT_PUBLIC_is recommended.)Install Supabase CLI:
- Follow the instructions at Supabase CLI
Login to Supabase:
supabase loginLink your project ( You need to be in the root of the project to run this command ):
supabase link- Select the project you just created when prompted
Run database migrations:
supabase db pushStart the development server:
npm run devOpen your browser and navigate to
http://localhost:3000
Case Files
Each case in SQL Noir is a unique crime that needs solving. Cases range from simple thefts to complex murders, organized by difficulty level. Put your SQL skills to the test and climb the ranks from rookie to master detective.
Join the Detective Agency
We welcome new detectives! Whether you want to:
- Submit new cases for others to solve
- Improve existing investigations
- Fix bugs in the system
- Enhance the detective interface
- Improve documentation
Check the Contributing Guidelines to join the force and help make SQL Noir even better.
Explore related projects
Asabeneh/30-Days-Of-Python
The 30 Days of Python programming challenge is a step-by-step guide to learn the Python programming language in 30 days. This challenge may take more than 100 days. Follow your own pace. These videos may help too: https://www.youtube.com/channel/UC7PNRuno1rzYPb1xLa4yktw
78,370 starsgrafana/grafana
The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
77,752 starsredis/redis
For developers, who are building real-time data-driven applications, Redis is the preferred, fastest, and most feature-rich cache, data structure server, and document and vector query engine.
77,288 starsapache/superset
Apache Superset is a Data Visualization and Data Exploration Platform
75,448 stars