Skip to content

MusicNest API — это RESTful API, разработанный на NestJS, который позволяет управлять музыкальными файлами и пользователями. Проект использует MongoDB для хранения данных, Express для обработки HTTP-запросов, Multer для загрузки файлов и UUID для генерации уникальных идентификаторов.

Notifications You must be signed in to change notification settings

woookle/music_nest

Repository files navigation

🇷🇺 Music Nest API

MusicNest API — это RESTful API, разработанный на NestJS, который позволяет управлять музыкальными файлами и пользователями. Проект использует MongoDB для хранения данных, Express для обработки HTTP-запросов, Multer для загрузки файлов и UUID для генерации уникальных идентификаторов.

🚀 Начало работы

⚙️ Предварительные требования

  • Node.js (v14 или выше)
  • MongoDB (v4.0 или выше)

🛠️ Установка

  1. 🔗 Клонируйте репозиторий
    git clone https://github.com/woookle/music_nest.git
    cd music_nest
  2. 📦 Установите зависимости
    npm install
  3. 🌐 Создайте файл .env в корне проекта и добавьте следующие переменные окружения
    DATABASE_URL = mongodb://localhost:27017/mydatabase
    PORT = 3000
  4. ✨ Запустите проект
    npm run start

📂 Директория для сохранения файлов

В вашем проекте есть директория uploads, которая содержит поддиректории images и audios для сохранения изображений и аудиофайлов соответственно.

Настройка директории для сохранения файлов

  1. 📁 Создайте директорию uploads:
    mkdir uploads
  2. 📁 Создайте директорию uploads:
    mkdir uploads/images
    mkdir uploads/audios

📓 Документация

API Endpoints

🎶 Музыка

  • GET /music - Получить все музыкальные файлы.

  • GET /music/:userId - Получить все музыкальные файлы пользователя.

    • Параметры:
      {
        "userId": "string"
      }
  • POST /music/upload - Загрузить новый музыкальный файл.

    • Параметры:
      {
        "image": "file",
        "audio": "file",
        "name": "string",
        "userId": "string"
      }
  • DELETE /music/delete - Удалить музыкальный файл.

    • Параметры:
      {
        "musicId": "string"
      }

👤 Пользователи

  • POST /user/register - Зарегистрировать нового пользователя.

    • Параметры:
      {
        "nickname": "string",
        "email": "string",
        "password": "string"
      }
  • POST /user/login - Авторизовать пользователя.

    • Параметры:
      {
        "email": "string",
        "password": "string"
      }
  • PATCH /user/addfavorites - Добавить музыкальный файл в избранное.

    • Параметры:
      {
        "userId": "string",
        "musicId": "string"
      }
  • DELETE /user/removefavorites - Удалить музыкальный файл из избранного.

    • Параметры:
      {
        "userId": "string",
        "musicId": "string"
      }
  • PATCH /user/changeavatar - Изменить аватар пользователя.

    • Параметры:
      {
        "userId": "string",
        "image": "file"
      }
  • PATCH /user/changenickname - Изменить никнейм пользователя.

    • Параметры:
      {
        "userId": "string",
        "newnickname": "string"
      }
  • PATCH /user/changepassword - Изменить пароль пользователя.

    • Параметры:
      {
        "userId": "string",
        "newpassword": "string"
      }

🎉 Заключение

Спасибо за интерес к MusicNest API! Мы надеемся, что этот проект поможет вам
управлять музыкальными файлами и пользователями легко и эффективно
😊

About

MusicNest API — это RESTful API, разработанный на NestJS, который позволяет управлять музыкальными файлами и пользователями. Проект использует MongoDB для хранения данных, Express для обработки HTTP-запросов, Multer для загрузки файлов и UUID для генерации уникальных идентификаторов.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published