
Build a full MERN stack music player with React, Redux Toolkit, and Tailwind on the front end, and Node, Express, MongoDB on the back end, including a custom audio player.
Demonstrates authentication flows with login and registration, jwt-based user management, and admin controls to manage songs and playlists with a music player, including create playlist, in mern stack music app.
Set up the front end by scaffolding a React app named client in the music player project, run on localhost 3000, and clean defaults to show Share Music.
Install and configure tailwind in a react-based mern stack music player app, create tailwind and postcss configs, update project files, restart the dev server, and apply basic tailwind utilities.
Set up the Node.js backend for the music player by installing Express and Mongoose, creating a server.js entry point, and running on port 5000 with nodemon for automatic restarts.
Set up MongoDB Atlas connection using the Atlas URL, install the dotenv extension, and connect Node.js with Mongoose, validating the connection and handling errors in a config-driven workflow.
Builds the register page for a MERN stack music player app, setting up frontend routing, redux toolkit, and axios, and crafting login and register forms.
Define and implement the user model in a MERN stack music player app, including name, email, password, and playlist fields, enabling registration and login APIs, with future expansion plans.
Build the register API for a MERN music player app by hashing passwords with bcrypt, checking for existing users, saving new users, and returning structured success or error messages.
Validate user credentials by querying the database for the provided email, compare the password with the stored hash, issue a JWT token for authentication, and store it in local storage.
Explore authorization in the authentication module by using a middleware to verify JWT from the authorization header and return protected user data for authenticated users.
Implement protected routes with a ProtectedRoute component that validates the user on each refresh and redirects unauthorized users to login, plus a public route to guide logged-in users to home.
Set up redux toolkit in the client, create alerts and user slices, implement loading indicators and toasts for API requests, and configure the store and provider.
Implement a loading overlay with a spinner in the MERN stack music player app, using a loader component, useSelector, and dispatch to manage API request states.
Design a minimal default layout for the MERN stack music player app, featuring a header with brand and logged-in user, a body with an all-songs list, and a bottom player.
Develop the song model on the back end and seed songs in MongoDB. Implement the get all songs API to power the front-end song UI, with search and playlist features.
Seed static songs into the MongoDB songs collection, format and import the json data, and implement the get all songs api with express and auth middleware.
Fetch all songs with axios post to the backend, secure with authorization header, then render them in the songs list on the home page and populate a playlist section.
Build a three-part music player component with image and song details, the audio element with controls, and volume controls, wired to Redux for the current song and next/previous.
Attach songs to the HTML audio element using React refs and build custom next, previous, and duration controls to play different tracks in the MERN stack music player.
Build a custom audio player for a MERN stack music app, replacing default controls with icons and using a stateful isPlaying flag and an audio element ref.
Implement next and previous controls by tracking the active song with a song index. Update the current song and pause, load, and play the new track on change.
Implement time and duration handling in the audio player with a timer slider showing current and total duration, updating on time changes, and enabling seeking via the range input.
Implement volume controls for the audio player in the Mern stack music app, including a range slider and mute functionality, and auto-select the first song when none is chosen.
Learn to build and manage playlists in the MERN stack music player app, creating a selected playlist from all songs, fetching user playlists from MongoDB, and preparing for playlist creation.
This lecture builds a create playlist screen in the MERN stack music player, featuring a playlist name input, song selection, and saving to update the user playlist.
Implement add and remove song logic for a playlist, toggle song selection with on click, update UI and save button state, validate and post playlist via Axios, then navigate home.
Develop back-end for create playlist in MERN Stack Music Player App 2022, attaching user id, adding name and songs to user playlist, and returning updated user data.
Update playlists in the MERN stack music player by using new: true in MongoDB, while redux selects a playlist for edit and only the songs are updated.
Learn to implement delete playlist in a MERN stack music player app by sending the playlist name to the backend, updating state with dispatch, and handling success and errors.
Perform a round of testing across login, registration, and playlist modules; fix validation, navigate to login on success, and address edge cases for next/previous, scrolling, and across the app playback.
Hi Guys ,
Welcome to the course MERN Stack Music Player
By listening the word music player you may be wondering that why we need a separate course for music player app.
Because already we lot of tutorials available to build music player. So to the student who are having this question...my answer is very simple You might have seen music player web apps which were build using plain Html/CSS or React or Plain Java script.
But in this course we will build the music player using MERN STACK.
What will students learn in this course ?
Building Real Time Project From Scratch
Handling file uploads with Multer and Cloudinary
Working with Tailwind CSS.
Building components from scratch without using any external libraries and frameworks.
Building our custom audio player which will have all the controls like play , pause , next song , previous song , shuffle songs , forward song , volume controls etc.
We will also work on playlists concept.
Creating playlist , add songs to playlist , removing songs from playlist etc.
Working with admin panel where the admin can control the entire application.
Adding song , uploading files , edit song etc.
Two rounds of unit testing.
Fixing issues after unit testing
By the end of this course you can able to build your own music player with all controls and functionalities.
24/7 Q/A Support
Deployment to Heroku.
--------------------------------------------------------------------------------------------------------------
MERN stands for MongoDB, Express, React, Node, after the four key technologies that make up the stack.
MongoDB - document database
Express(.js) - Node.js web framework
React(.js) - a client-side JavaScript framework
Node(.js) - the premier JavaScript web server
Express and Node make up the middle (application) tier. Express.js is a server-side web framework, and Node.js the popular and powerful JavaScript server platform. Regardless of which variant you choose, ME(RVA)N is the ideal approach to working with JavaScript and JSON, all the way through.
React is a free and open-source front-end JavaScript library for building user interfaces based on UI components. It is maintained by Meta and a community of individual developers and companies.
Redux is an open-source JavaScript library for managing and centralizing application state. It is most commonly used with libraries such as React or Angular for building user interfaces. Similar to Facebook's Flux architecture, it was created by Dan Abramov and Andrew Clark.
Node.js is an open-source, cross-platform, back-end JavaScript runtime environment that runs on the V8 engine and executes JavaScript code outside a web browser, which was designed to build scalable network applications.
MongoDB is an open source cross-platform document-oriented database program. Classified as a NoSQL database program, MongoDB uses JSON-like documents with optional schemas. MongoDB is developed by MongoDB Inc. and licensed under the Server Side Public License which is deemed non-free by several distributions