A community-driven music discovery and review platform that helps users discover, review, and share the best new music releases every week.
- Weekly album submission system
- Review assignment and scoring
- Community curation of music
- Spotify integration for playlist generation
- Weekly reports and statistics
- User profiles
- Frontend: React with React Router
- Backend: Node.js with Express
- Database: Supabase
- Authentication: Supabase Auth
- Music Data: Spotify API
- Styling: Custom CSS
rep-reviews/
├── backend/ # Node.js/Express backend server
│ ├── server/ # Server code
│ ├── services/ # Business logic services
│ └── templates/ # Email templates
├── frontend/ # React frontend
│ ├── client/ # React app
│ │ ├── public/ # Static assets
│ │ └── src/ # Source code
│ │ ├── assets/ # Images and other assets
│ │ ├── components/# Reusable components
│ │ ├── context/ # React context providers
│ │ ├── css/ # CSS stylesheets
│ │ ├── hooks/ # Custom React hooks
│ │ ├── pages/ # Page components
│ │ └── utils/ # Utility functions
- Node.js (v14 or later)
- npm or yarn
- Supabase account
- Spotify Developer account
-
Clone the repository:
git clone https://github.com/yourusername/rep-reviews.git cd rep-reviews
-
Install dependencies:
# Install backend dependencies cd backend npm install # Install frontend dependencies cd ../frontend/client npm install
-
Set up environment variables:
- Create
.env
file in thebackend
directory:PORT=3001 SPCLIENTID=your_spotify_client_id SPCLIENTSECRET=your_spotify_client_secret SPREFRESHTOKEN=your_spotify_refresh_token SPUSERID=your_spotify_user_id
- Create
.env.local
file in thefrontend/client
directory:VITE_SUPABASE_URL=your_supabase_url VITE_SUPABASE_ANON_KEY=your_supabase_anon_key VITE_APP_ENV=development
- Create
-
Start the development servers:
# Start backend server cd backend npm start # In a new terminal, start frontend server cd frontend/client npm run dev
-
Open your browser and navigate to
http://localhost:5173
- Set up environment variables on your hosting platform
- Deploy the Node.js backend
# Build for production
cd backend
npm run build
# Start production server
npm start
- Build the React app for production:
cd frontend/client
npm run build
- Deploy the contents of the
frontend/client/dist
directory to your web hosting service
This project is licensed under the MIT License - see the LICENSE file for details.
- Supabase for the backend infrastructure
- Spotify API for music data
- React and Vite for the frontend framework
- Lucide React for the beautiful icons