Soulbeats is a music streaming platform, just like Spotify, Apple Music. It is a demo project for a DBMS course, so the project is quite raw. The main goal was to connect the database to the user interface.
P.S. If you are going to use the project's code for production, please note that there are security issues. For example, passwords are not encrypted and with the GET /users
query, you can get all users' data with non-encrypted passwords, even if you are not in the system and do not have administrator rights.
🧱 TL;DR: MS SQL Server, Node.js, Android (Java)
The project uses as few and as simple things as possible:
-
Node.js – Server-side, API
- express – Network stuff
- mssql – Connect and manage database
- express-validator – Validate fields
- dotenv – Store and load environment variables
- jsonwebtoken – Tokens
-
Android – Client-side, Mobile
- Retrofit – Make requests
- Material Design – UI components
-
vas3k.club – Markdown Template
I am lazy, so no docker ¯\_(ツ)_/¯
-
Clone the repo
$ git clone https://github.com/truebeliever17/soulbeats.git $ cd soulbeats
-
Run
db_create_table.sql
in your database -
Create .env file in the root directory and replace values below with your configs:
PORT=5000 DB_USER=example_user DB_PASSWORD=example_user_password DB_HOST=localhost DB_DATABASE=example_db SECRET_KEY=example
-
Install all dependencies and start the server
$ cd backend $ npm install $ node index.js