A Modern SQL Learning Platform for Students
DataPilot v2 is a web-based SQL learning environment that provides each student with an isolated SQLite database for safe, independent practice. Built to solve the pain points of shared database systems in educational settings.
- 🔐 User Authentication - Secure JWT-based authentication with bcrypt password hashing
- 🗄️ Isolated Databases - Each user gets their own SQLite database with sample data
- 💻 SQL Editor - Monaco editor with syntax highlighting and autocompletion
- ⚡ Query Execution - Fast query execution with 10-second timeout protection
- 📊 Results Display - Clean table view of query results with success/error indicators
- 📜 Query History - Automatic tracking of all executed queries with timestamps
- 🔄 Database Reset - One-click reset to restore sample data
- 💾 Database Download - Export your database as SQLite file
- 🏗️ Schema Viewer - Quick view of all tables and column counts
Each user starts with a pre-populated database containing:
- students table (3 sample students)
- courses table (3 sample courses)
- enrollments table (4 sample enrollments)
Perfect for practicing:
- Basic SELECT queries
- Joins (INNER, LEFT, RIGHT)
- Aggregations (COUNT, AVG, SUM)
- Filtering and sorting
- Subqueries
- Django - Modern Python web framework
- Motor - Async MongoDB driver
- aiosqlite - Async SQLite operations
- JWT - Token-based authentication
- Bcrypt - Password hashing
- React 19 - UI framework
- Monaco Editor - Code editor
- Shadcn/UI - Component library
- Tailwind CSS - Styling
- Axios - HTTP client
- Sonner - Toast notifications
- MongoDB - User data and query history
- SQLite - Individual user databases
- Practice SQL queries in a safe environment
- Learn from query history
- Experiment without fear of breaking shared databases
- Download database for offline practice
- Assign SQL exercises
- Monitor student progress through query history
- Provide isolated environments for exams
- Easy setup for entire class
- Follow SQL tutorials with real data
- Test query variations
- Track learning progress
- Build portfolio of SQL skills
- Database Isolation - Each user has separate SQLite file
- Query Timeout - 10-second limit prevents infinite loops
- JWT Authentication - Secure token-based auth
- Password Hashing - Bcrypt with automatic salt
- CORS Protection - Configured for specific origins
POST /v2/auth/register- Create accountPOST /v2/auth/login- LoginGET /v2/auth/me- Get user info
POST /v2/sql/execute- Execute queryGET /v2/sql/history- Get query historyDELETE /v2/sql/history- Clear history
POST /v2/db/reset- Reset databaseGET /v2/db/download- Download databaseGET /v2/db/schema- Get schema info
Made with ❤️ for students learning SQL