https://github.com/qeqqe/grayknight-remake
Web-based Spotify music player with track control and library management features.
https://github.com/qeqqe/grayknight-remake
nestjs nextjs postgresql prisma redis spotify-web-api typescript
Last synced: 3 months ago
JSON representation
Web-based Spotify music player with track control and library management features.
- Host: GitHub
- URL: https://github.com/qeqqe/grayknight-remake
- Owner: qeqqe
- License: mit
- Created: 2025-01-20T14:45:21.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-02T08:20:48.000Z (over 1 year ago)
- Last Synced: 2025-02-09T07:16:28.279Z (over 1 year ago)
- Topics: nestjs, nextjs, postgresql, prisma, redis, spotify-web-api, typescript
- Language: TypeScript
- Homepage: https://gray-knight-remake.vercel.app
- Size: 472 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# GrayKnight - Spotify Analytics & Controller
A web application that enhances your Spotify experience with detailed listening statistics and advanced playback controls.
## Features
### Live Music Control
- Real-time playback controls
- Multi-device management
- Queue management
- Volume and playback mode controls




### Detailed Analytics
- Track listening history
- Genre distribution analysis
- Peak listening hours
- Time-based statistics
- Artist diversity tracking



### Library Management
- User Top items
- User's playlist and dialogs

### Smart Features
- Offline tracking capability
- Background scrobbling
- Cross-device synchronization
- Listening pattern analysis
- 
## Technical Details
### Frontend
- Built with Next.js and Ts
- Responsive design with Tailwind CSS
- Clean and consitent UI.
### Backend
- NestJS
- PSQL with Prisma
- Efficient caching system (almost done)
- Spotify Web API integration
### Key Components
- User authentication and session management
- Real-time track scrobbling
- Artist genre caching
- Time-series data tracking
- Device state management
## Setup Guide
### Prerequisites
- Node.js (v16 or higher)
- PostgreSQL database
### Installation Steps
1. **Clone the Repository**
```bash
git clone https://github.com/qeqqe/GrayKnight-Remake.git
cd GrayKnight-Remake
```
2. **Install Dependencies**
```bash
pnpm install
```
3. **Environment Configuration**
- Copy `.env.example` to `.env` in both apps/client and apps/server
- Fill in required environment variables
4. **Start Development Servers**
```bash
# Start Frontend (from apps/client)
cd apps/client
pnpm run dev
# Start Backend (from apps/server)
cd apps/server
pnpm run start:dev
```