A comprehensive database schema design for a music platform.
What started as a simple database class project was meant to be built quickly using Python and React. This project marked my first encounter with React (and HeroUI) β and while the initial attempts weren't exactly smooth sailing, I managed to grasp the framework in just a few days. The irony wasn't lost on me: building a platform called "Chillify" while being anything but chill about those looming deadlines.
We didn't give up and decided to reuse this project in the Database Lab project. This time, I focused on designing a robust and efficient database schema using MySQL Workbench.
The result? A fully functional music platform database schema.
just for fun and learning :)
β οΈ Warning: The project was completely rebooted after commitdd392e2. The first version is no longer supported or maintained. If you need access to the original implementation, checkout to that specific commit at your own risk.
βββ diagram/
β βββ diagram.dbml # Database diagram (DBML format)
β βββ diagram.png # Database diagram (PNG format)
βββ scripts/
β βββ tables.sql # Table definitions
β βββ procedures.sql # Stored procedures
β βββ views.sql # Database views
β βββ functions.sql # Custom functions
β βββ data.sql # Sample data
βββ Dockerfile # Docker configuration
βββ LICENSE
βββ README.md
- Docker installed on your machine
- Sql Server Management Studio (SSMS) or any SQL client to connect to the database
-
Clone the repository
git clone https://github.com/Mr-MRF-Dev/Chillify-DataBase-Project.git cd Chillify-DataBase-Project -
Build the Docker image
docker build -t chillify-db . -
Run the container
docker run -d -p 1433:1433 --name chillify-database chillify-db
-
Connect to the database
- Server:
localhost,1433 - Username:
sa - Password:
Admin@Pass - Database:
Chillify
- Server:
The database is automatically initialized with the following scripts (in order):
tables.sql- Creates all database tablesprocedures.sql- Sets up stored proceduresviews.sql- Creates database viewsfunctions.sql- Defines custom functionsdata.sql- Populates initial data
The Chillify database schema includes:
- User Management - User accounts, profiles, and authentication
- Music Library - Songs, albums, artists, and genres
- Playlists - User-created playlists and favorites
- Database: Microsoft SQL Server 2022
- Containerization: Docker
- Design Tool: MySQL Workbench (for schema design)
- Diagram Format: DBML (Database Markup Language)
- Scripting: SQL
- Version Control: Git & GitHub
- Diagram Visualization: dbdiagram.com
We welcome any contributions you may have. If you're interested in helping out, please fork the repository and create an Issue or Pull Request. We'll be happy to review your contributions.
This project is licensed under the MIT License - see the LICENSE file for details.
