Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/alexandrbig1/harmony-hub-backend

A robust API for user authentication and personalized music playlist generation based on emotional states. Built with Node.js, Express.js, and MongoDB, this project provides user registration, login, and playlist management features. Developed as part of Hackathon 2024, focusing on innovative solutions in music technology.
https://github.com/alexandrbig1/harmony-hub-backend

api api-rest authentication backend backend-api backend-service expressjs fullstack fullstack-development javascript js mongodb mongoose nodejs restful-api user-management webdevelopment

Last synced: 14 days ago
JSON representation

A robust API for user authentication and personalized music playlist generation based on emotional states. Built with Node.js, Express.js, and MongoDB, this project provides user registration, login, and playlist management features. Developed as part of Hackathon 2024, focusing on innovative solutions in music technology.

Awesome Lists containing this project

README

        

# Harmony Hub Backend

Welcome to the backend repository of **Harmony Hub**! This project aims to provide an enriching online platform that helps users generate personalized music playlists based on their emotional state. The backend is designed to facilitate user registration, login, and playlist generation tailored specifically to individual preferences. This project was created as a participation in **Hackathon 2024**.

[![GitHub last commit](https://img.shields.io/github/last-commit/Alexandrbig1/italiya-backend)](https://github.com/Alexandrbig1/italiya-backend/commits/main)
[![GitHub license](https://img.shields.io/github/license/Alexandrbig1/italiya-backend)](https://github.com/Alexandrbig1/italiya-backend/blob/main/LICENSE)
[![Node.js Version](https://img.shields.io/badge/Node.js-v18.18.0-2B8B27)](https://nodejs.org/)
[![Express.js Version](https://img.shields.io/badge/Express.js-v4.18.2-000000)](https://expressjs.com/)
[![MongoDB](https://img.shields.io/badge/MongoDB-v6.3.0-3B9539)](https://www.mongodb.com/)
[![Mongoose Version](https://img.shields.io/badge/Mongoose-v8.0.3-6B0002)](https://mongoosejs.com/)
[![JWT](https://img.shields.io/badge/JSON%20Web%20Token-v9.0.2-000000)](https://jwt.io/)
[![Express Rate Limit](https://img.shields.io/badge/Express%20Rate%20Limit-7.4.1-000000)](https://github.com/nfriedly/express-rate-limit)

---

## Live Demo

[Live Demo](https://harmony-hub-live.netlify.app)

## FrontEnd Repository

[FrontEnd](https://github.com/Alexandrbig1/harmony-hub)

## Backend APIs with Swagger Documentation

[Swagger](https://harmony-hub-backend.onrender.com/api-docs)

---

## Description

The Harmony Hub backend provides a robust API for user authentication and personalized music generation. Users can register and log in to their accounts, enabling them to generate playlists that reflect their emotional states and musical preferences. This project is built as part of the **Hackathon 2024**, emphasizing innovative solutions for enhancing the music experience.

This project aims to provide an enriching online platform that helps users generate personalized music playlists based on their emotional state. The backend is designed to facilitate user registration, login, and playlist generation tailored specifically to individual preferences. This project was created as a participation in **Hackathon 2024**, emphasizing innovative solutions for enhancing the music experience.

The Harmony Hub backend provides a robust API for user authentication and personalized music generation. Users can register and log in to their accounts, enabling them to generate playlists that reflect their emotional states and musical preferences. This project is built as part of the **Hackathon 2024 Cyber Jam**, an immersive hackathon taking place from October 19th to October 27th at Chicago's global innovation hub, 1871. Teams of 5 (we call them Jammers) will work together on phygital experiences combining art, technology, and innovation across five thematic tracks:

- AI
- Fashion
- Governance
- Sports/Gaming
- Security & Privacy

---

## Technologies Used

- ![Node.js](https://img.shields.io/badge/Node.js-339933.svg?style=for-the-badge&logo=nodedotjs&logoColor=white): A JavaScript runtime for server-side programming.
- ![Express.js](https://img.shields.io/badge/Express-000000.svg?style=for-the-badge&logo=Express&logoColor=white): A web framework for building RESTful APIs.
- ![MongoDB](https://img.shields.io/badge/MongoDB-47A248.svg?style=for-the-badge&logo=mongodb&logoColor=white): A NoSQL database for data storage.
- ![Mongoose](https://img.shields.io/badge/Mongoose-880000.svg?style=for-the-badge&logo=mongoose&logoColor=white): An ODM library for MongoDB and Node.js.
- ![JSON Web Token](https://img.shields.io/badge/JSON%20Web%20Tokens-000000.svg?style=for-the-badge&logo=JSON-Web-Tokens&logoColor=white): For user authentication.
- ![Express Rate Limit](https://img.shields.io/badge/Express%20Rate%20Limit-7.4.1-000000): Middleware to limit repeated requests to public APIs.
- **Cors:** Middleware for handling Cross-Origin Resource Sharing.
- **Morgan:** HTTP request logger middleware for Express.js.
- **bcrypt:** For password hashing.
- **dotenv:** For environment variable management.
- **Joi:** For input validation.
- **UUID:** For generating unique IDs.
- ![JSON](https://img.shields.io/badge/JSON-000000.svg?style=for-the-badge&logo=JSON&logoColor=white): Data interchange format used in the project.

---

## Table of Contents

- [Features](#features)
- [Technologies Used](#technologies-used)
- [License](#license)

---

## Issues

If you encounter any issues or have suggestions, please
[open an issue](https://github.com/Alexandrbig1/harmony-hub-backend/issues).

---

## License

This project is licensed under the [MIT License](LICENSE).

---

## Feedback

I welcome feedback and suggestions to improve the application's functionality and user experience.

---

## Languages and Tools


JavaScriptNodeJS
MongoDB
Express
Vite

git

postman

---

## Connect with me:



linkedin


YouTube


Discord


stackoverflow


dribbble


behance


Upwork