Welcome to Twilight - a digital oasis where music and magic intertwine. Powered by the MERN stack, this sleek platform offers a personalized auditory journey. It’s more than just music; it’s a cosmic concert of cool, where technology and melody perform a nightly serenade just for you.
- 🎵 Curate Playlists - Create personalized playlists based on music preferences.
- 🔍 Powerful Search - Find tracks, albums, or artists instantly.
- 🎭 Immersive UI - Explore a visually engaging music player.
- 📌 User Profiles - View favorite songs and get music recommendations.
- 🎨 Genre & Artist Exploration - Discover new music genres and artists interactively.
Technology | Description |
---|---|
Node.js | JavaScript runtime for backend development |
Express.js | Web framework for Node.js |
MongoDB Atlas | Cloud-based NoSQL database |
Mongoose | MongoDB object modeling for Node.js |
React.js | Frontend JavaScript library |
Before running the project, ensure you have the following installed:
- Node.js - JavaScript runtime for server-side execution.
- MongoDB Atlas - Cloud database to store user and music data.
- Firebase - Used for storing images and audio files.
git clone https://github.com/AMS003010/Twilight.git
cd Twilight
npm install
Create a .env file in the backend
directory and add the following:
PORT='<your_port>'
MONGO_URI='<your_mongodb_uri>'
SECRET='<your_secret_key>'
Add your Firebase configuration details in frontend/src/firebase.js
:
import { initializeApp } from "firebase/app";
import { getStorage } from "firebase/storage";
const firebaseConfig = {
<your_firebase_config_details>
};
const app = initializeApp(firebaseConfig);
export const storage = getStorage(app);
cd backend
npm start
Open another terminal:
cd frontend
npm start
Go to localhost:3000 in your browser.
Use the following components to upload songs and playlists to Firebase Storage:
Feature | Screenshot |
---|---|
Home Page | ![]() |
Intro Page | ![]() |
Login Page | ![]() |
Signup Page | ![]() |
Listening Space | ![]() |
Music Control | ![]() |
Genres | ![]() |
Artists | ![]() |
Search Page | ![]() |
User Dashboard | ![]() |
This project is maintained by @AMS003010.
We welcome contributions to Twilight! To contribute:
- Fork the repository.
- Create a new branch (
feature-branch
). - Commit your changes.
- Push to your branch and open a pull request.
This project is licensed under the MIT License.
📩 Contact For any queries or issues, feel free to reach out via GitHub Issues.
Happy Coding! 🚀