/zap-recall-back

API do Zap Recall

Primary LanguageJavaScript

⚡ Zap Recall Backend

Badge Finalizado

Índice


Sobre

API do Zap Recall, uma página web de revisão por flashcards.


Rotas

Rotas não autenticadas

Cadastro

  • Rota: /sign-up

  • Método: POST

  • Exemplo de Body:

    {
      "username": "cartman",
      "password": "cartmanomaior"
    }
  • Possíveis erros:

    • Campos ausentes ou vazios
    • Já existe um usuário com os dados informados

Login

  • Rota: /sign-in

  • Método: POST

  • Exemplo de Body:

    {
      "username": "cartman",
      "password": "cartmanomaior"
    }
  • Exemplo de Resposta:

    {
      "key_access": "pwoehfcnmçksh.dflkjskbckjl.jfoakspfoiwujknfcç",
    }
  • Possíveis erros:

    • Campos ausentes ou vazios
    • Não existe um usuário com os dados informados

Listar baralhos

Atenção: essa rota lista os baralhos públicos. Para listar os baralhos de um usuário essa rota é autenticada, vide a seção Rotas autenticadas para ver requisitos.

  • Rota: /decks

  • Método: GET

  • Exemplo de Resposta:

    [
      {
          "_id": "6331ff556d1fe703d7f8fe38",
          "name": "React",
          "cards": [
              {
                  "question": "O que é JSX?",
                  "answer": "Uma extensão de linguagem do JavaScript"
              }
          ]
      }
    ]

Rotas autenticadas

  • Enviar Header Key_Access com a chave enviada no Login
  • Possíveis erros:
    • Header Key_Access ausente
    • Chave inválida

Criar baralho

  • Rota: /decks

  • Método: POST

  • Exemplo de Body:

    {
      "name": "Nodejs",
      "cards":  [
        {
          "question": "O que é NodeJS?",
          "answer": "Um ambiente de execução de JavaScript"
        }
      ],
      "password": "cartmanomaior"
    }
  • Possíveis erros:

    • Campos do body ausentes ou vazios
    • Campo cards deve ter entre 4 e 10 flashcards
    • Senha inválida

Como rodar em desenvolvimento

Atenção: para rodar o projeto é preciso ter o MongoDB instalado em sua máquina.

  1. Clone esse repositório:
git clone https://github.com/anatfernandes/zap-recall-back.git
  1. Instale as dependências:
npm install
  1. Configure o arquivo .env com base no arquivo .env.example

  2. Inicie o projeto:

npm run dev
  1. Instale e configure o frontend em https://github.com/anatfernandes/zap-recall

  2. Divirta-se nas rotas usando de URL base: http://localhost:{ENV_PORT}