HARMONIA is a music streaming application that allows users to discover and enjoy music in both Ukrainian and English languages. Users can also become creators and upload their own songs to share with the community. This project is built using Flask, MySQL, React.js, and Electron.js.
- Music streaming similar to Spotify.
- User account management and authentication.
- Bilingual support with options to switch between Ukrainian and English.
- User-created content: upload and share your own songs.
- A user-friendly interface for a seamless music experience.
- Flask: The backend of the application is built using Flask, a lightweight and versatile Python web framework.
- MySQL: We use MySQL as the database management system to store user accounts, music data, and other essential information.
- React.js: The frontend is developed using React.js, a popular JavaScript library for building user interfaces.
- Electron.js: Electron.js allows us to package the application as a desktop app for a cross-platform experience.
To get started with HARMONIA, follow these steps:
-
Clone the repository:
git clone https://github.com/daniil-zahoruiko/spotify_project.git cd spotify_project
-
Database Setup:
Create a MySQL database and forward module from data/db.
-
Run Backend:
cd source/desktop_client/backend pip install -r requirements.txt cd source/desktop_client/backend/src python app.py
-
Run Frontend:
cd source/desktop_client/frontend yarn install yarn run dev
App was created by Daniil Zahoruiko, University of Alberta student, and Dmytro Avdieienko, University of Southampton student, where each contributed in all sections of development.