Skip to content

Delta-Software-Innopolis/Database-Playground

 
 

Repository files navigation

License: MIT HTML5 CSS3 NodeJS Vite TypeScript React React Router Python Django Pytest SQLite MongoDB Postgres GitHub Actions Docker

Database Playground

Online platform for learning databases

Deploy Demo

Description

Database Playground is an online platform for learning different databases. You can go to the playground and start learning right away without installing anything. We have pre-made templates with different scenaries with support of PostgreSQL and MongoDB. In the future we will add classrooms and assignments, as well as support for SQLite and MySQL.

Goal of the project is to provide a easy to use platform for education in the field of databases.

Project Context Diagram

image

Usage instructions

  • open https://dbpg.ru in your favorite browser
  • hover the menu in the top right corner
  • select playground
  • select the template you want to use
  • press the start button
  • you are now in the playground (in case of weird stuff or bugs reload the page)
    • in case you selected Postgres template:
      • top left is the query input, you can type your queries there and submit by the send button
      • top right is the schema panel, you can see your database tables and their schemas in it (switch tabs by clicking them)
      • bottom is the results panel, once you run a query it should display its execution result
    • in case you selected MongoDB template:
      • left is the query input
      • right is the results panel
    • via top bar you can return to the main page or change the template

Launch/Access instructions

You can visit deployed version

Or you can build the app yourself:

  1. Clone the repo:
$ git clone https://github.com/Delta-Software-Innopolis/Database-Playground
$ cd Database-Playground
  1. In order for app to run you need .env and db.sqlite3, you can take sample data from the deploy directory:
$ cp deploy/db.sqlite backend/core/db.sqlite3
$ cp deploy/.env.sample .env
  1. Install frontend dependencies via npm:
$ cd frontend-37
$ npm install
  1. Run the app via Docker Compose (Install it here):
$ docker compose up --build
  1. Working version should be available at http://localhost:5173

Documentation

Architecture

Build and deployment automation

Quality Assurance

Quality Attributes


Project Files

Packages

 
 
 

Contributors

Languages

  • Python 53.2%
  • TypeScript 27.4%
  • CSS 12.2%
  • JavaScript 6.6%
  • Dockerfile 0.4%
  • HTML 0.2%