https://react-mp3-mm7n.vercel.app/
- User can upload single/multiple .mp3/.wav files to the website
- User can then preview the files uploaded to the system
- For mp3 files user can play, pause, stop, and loop the file using the control buttons
- User can upload a CSV file to the system and can preview it as soon as it is uploaded
- User can sort the data in the table
- There are certain validations for both the audio and CSV file
- Audio file must be only .mp3/.wav filetype and must be less than 3mb
- CSV file must contain appropriate required headers and should be less than 200kb
- Most of the errors are handled gracefully with appropriate message
- There is authentication and authorization in the system.
- User can register/login with email and password, Google, and Facebook.
- UI can be greatly improved
- Code can be restructured for better readability and maintainability
- Uploaded files can be stored to a database example firestore so that it can be persisted because as of now it is only in state and will be removed once the page is reloaded
- User logged in state can be identified with the help of firebase by creating a custom hook and calling firebase's function
git clone https://github.com/shivamvijaywargi/react-mp3.git
cd react-mp3
pnpm i (or npm i)
pnpm dev (or npm run dev)