𝄞 Sing me a Song API 𝄞

Sing me a song allows you to recommend songs by sharing the song's youtube link

Installation

    git clone https://github.com/SrSauloss/sing-me-a-song.git
    cd sing-me-a-song
    npm i

Start

npm run start:test

Requests

  • POST /recommendations

    • body:
       {
          "name": "TĂ­tulo do vĂ­deo da mĂșsica",
          "youtubeLink": "link da mĂșsica",
       }
    • response: status code 201
  • POST /recommendations/:id/upvote

    • parameter: id (recommendation id)
    • response: status code 200
  • POST /recommendations/:id/downvote

    • parameter: id (recommendation id)
    • response: status code 200
  • GET /recommendations/random

    • response: :
        {
          "id": 1,
          "name": "TĂ­tulo do vĂ­deo da mĂșsica",
          "youtubeLink": "link da mĂșsica",
          "score": 245
        },
  • GET /recommendations/top/:amount

    • parameter: amount (recommendation limit)
    • response: :
        [
          {
            "id": 150,
            "name": "TĂ­tulo do vĂ­deo da mĂșsica",
            "youtubeLink": "link da mĂșsica",
            "score": 245
          },
          {
            "id": 12,
            "name": "TĂ­tulo do vĂ­deo da mĂșsica",
            "youtubeLink": "link da mĂșsica",
            "score": 112
          },
          ...
        ]

Tests (unit)

  • npm run test:watch