Beatbox is a Spotify-inspired music streaming platform where artists can upload their own music and listen to their favorite tracks. This project combines the power of React and Flask to deliver a smooth music playback experience with full user authentication with playlist and album management.
- Frontend: React with Vite for fast, modern frontend development.
- State Management: Redux for global state management.
- Backend: Flask for handling server-side logic and API requests.
- ORM: SQLAlchemy for robust and easy-to-use object-relational-mapping.
- Database: PostgreSQL for production and SQLite for development.
Ensure you have the following installed:
- Node.js (v18 or higher)
- npm (v9 or higher)
- Python (v3.9.4 or higher)
- PostgreSQL (v14 or higher)
git clone https://github.com/recondemon/Beatbox.gitcd react-vite && npm icp .env.example .env
pipenv install -r requirements.txt
pipenv shell
flask db upgrade
flask seed allNote: You will have to add your own S3 bucket credentials to the .env file with the following keys:
S3_BUCKETS3_SECRETS3_KEY
pipenv run flask db upgrade && pipenv run flask db seed allpipenv run flask runcd react-vite && npm run devVisit http://localhost:5173/ in your browser to start using Beatbox.
