This is a query play studio, written in and for educational and demonstrational purposes.
A full-stack SPA platform for mastering database query writing across various database systems. Provides secure sandbox environments with different databases for hands-on experimentation. Supports both free exploration and structured exercise modes. Features an AI mentor using cloud or local models for intelligent query analysis, performance optimization, and guidance on advanced query language constructs.
Based on tech stack:
- HTML,
- PHP,
- Symfony,
- MySQL,
- TypeScript,
- Vue,
- Vue Router,
- Pinia,
- Axios,
- CSS,
- TailwindCss,
- Docker,
- Swagger,
- Postman.
- Clone the repository:
git clone [repository-url]- Change directory to project:
cd /path/to/query-play-studio/-
Add file .env.local with your parameters
-
Run Docker Desktop (with wsl - for Windows only)
-
Run wsl (for Windows only):
wsl- Up docker compose:
docker-compose --env-file .env.local up -dor
./docker/run.sh- Also available other scripts:
./docker/build.sh
./docker/stop.sh
./docker/kill.sh- Generate application key:
docker compose exec php bin/console secrets:generate-keys
docker compose exec php bin/console secrets:set APP_SECRETor
docker compose exec php php -r "echo 'APP_SECRET=' . bin2hex(random_bytes(32)) . PHP_EOL;"- Add new tab in terminal and connect to container:
docker exec -it qps-php bash- Install php dependencies:
composer install- Install node dependencies:
npm install- Build project:
npm run build- In browser go to http://localhost/
That's it! Thank you!
The 'Query play studio' is open-sourced software licensed under the MIT license.