A modern music streaming platform with a neon cyberpunk aesthetic, featuring AI-powered playlist generation and real-time audio visualization.
- 🎨 Sleek neon cyberpunk design with smooth animations
- 🎵 Real-time audio visualization
- 🤖 AI-powered playlist generation
- 📱 Responsive layout for all devices
- 🖥️ Cross-platform desktop application (Electron)
- 🌐 Web version accessible from any browser
-
Frontend:
- Next.js 14 with App Router
- React with TypeScript
- Tailwind CSS for styling
- Framer Motion for animations
-
Backend:
- Express.js server
- RESTful API endpoints
- Mock data (ready for real database integration)
-
Desktop:
- Electron for cross-platform support
- IPC communication between renderer and main process
-
Clone the repository:
git clone https://github.com/yourusername/badbeats.git cd badbeats -
Install dependencies:
# Install client dependencies cd client npm install # Install server dependencies cd ../server npm install # Install Electron dependencies cd ../electron npm install
-
Create a
.envfile in the root directory with the following variables:PORT=3001 NEXT_PUBLIC_API_URL=http://localhost:3001 DEV_SERVER_URL=http://localhost:3000 PRODUCTION_APP_URL=app://./index.html
-
Start the development servers:
# Start Next.js client (in client directory) npm run dev # Start Express server (in server directory) npm run dev # Start Electron app (in electron directory) npm start
badbeats/
├── client/ # Next.js frontend
│ ├── src/
│ │ ├── app/ # App router pages
│ │ ├── components/ # React components
│ │ ├── hooks/ # Custom React hooks
│ │ └── types/ # TypeScript definitions
│ └── public/ # Static assets
├── server/ # Express.js backend
│ ├── index.js # Server entry point
│ └── routes/ # API routes
└── electron/ # Desktop application
├── main.js # Main process
└── preload.js # Preload scripts
- Client: The Next.js frontend runs on
http://localhost:3000 - Server: The Express backend runs on
http://localhost:3001 - API: Access the API at
http://localhost:3001/api - Desktop: The Electron app loads the development server in development mode
- Fork the repository
- Create a feature branch:
git checkout -b feature/my-feature - Commit your changes:
git commit -m 'Add some feature' - Push to the branch:
git push origin feature/my-feature - Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.
- Neon UI inspiration from cyberpunk aesthetics
- Audio visualization powered by Web Audio API
- Icons and graphics from various open-source projects