initial commit
This commit is contained in:
63
README.md
Normal file
63
README.md
Normal file
@@ -0,0 +1,63 @@
|
||||
# Music Platform
|
||||
|
||||
Музыкальная платформа с функционалом, похожим на Яндекс.Музыку/Spotify.
|
||||
|
||||
## Возможности
|
||||
|
||||
- Регистрация и авторизация пользователей
|
||||
- Загрузка своих песен с обложками
|
||||
- Скачивание песен
|
||||
- Создание и управление плейлистами
|
||||
- Публичные и приватные плейлисты
|
||||
- Комнаты для совместного прослушивания с чатом
|
||||
- Dynamic Island плеер (как на iPhone)
|
||||
|
||||
## Технологии
|
||||
|
||||
- Frontend: React + Vite
|
||||
- Backend: Python FastAPI
|
||||
- База данных: SQLite
|
||||
- WebSocket для real-time функций
|
||||
|
||||
## Установка и запуск
|
||||
|
||||
### Backend
|
||||
|
||||
```bash
|
||||
cd backend
|
||||
pip install -r requirements.txt
|
||||
python init_db.py
|
||||
uvicorn app.main:app --reload
|
||||
```
|
||||
|
||||
Backend будет доступен на http://localhost:8000
|
||||
|
||||
### Frontend
|
||||
|
||||
```bash
|
||||
cd frontend
|
||||
npm install
|
||||
npm run dev
|
||||
```
|
||||
|
||||
Frontend будет доступен на http://localhost:5173
|
||||
|
||||
## Использование
|
||||
|
||||
1. Зарегистрируйтесь на сайте
|
||||
2. Загрузите свои песни через раздел "Загрузить"
|
||||
3. Создавайте плейлисты и добавляйте в них песни
|
||||
4. Создавайте комнаты для совместного прослушивания с друзьями
|
||||
5. Используйте Dynamic Island плеер для управления воспроизведением
|
||||
|
||||
## API Endpoints
|
||||
|
||||
- `POST /api/auth/register` - Регистрация
|
||||
- `POST /api/auth/login` - Вход
|
||||
- `POST /api/music/upload` - Загрузка песни
|
||||
- `GET /api/music/songs` - Получить все песни
|
||||
- `GET /api/music/download/{song_id}` - Скачать песню
|
||||
- `POST /api/playlists/create` - Создать плейлист
|
||||
- `GET /api/playlists/my-playlists` - Мои плейлисты
|
||||
- `POST /api/rooms/create` - Создать комнату
|
||||
- `WS /api/rooms/ws/{room_code}` - WebSocket для комнаты
|
||||
Reference in New Issue
Block a user