Skip to content

thalis-freitas/redeems-challenge-ruby

Repository files navigation

Redeems Challenge

Sumário

Descrição do projeto

API desenvolvida para o desafio técnico de backend em Ruby. O objetivo é criar uma API para gerenciar páginas de resgates, onde os usuários podem preencher seus dados para serem aprovados e, após a aprovação, receberem os itens relacionados ao resgate.

Desenvolvimento

Premissas

  • O resgate obrigatoriamente deve estar associado a uma página de resgate.
  • Páginas de resgate podem (ou não) ter variações de tamanhos.
  • Páginas de resgate podem (ou não) ter perguntas extras.
  • Páginas de resgate podem ficar inacessíveis para novos resgates.
  • O mesmo usuário não pode realizar novos resgates antes que o resgate anterior seja aprovado ou reprovado.

Solução

Com base nas premissas:

  • Estrutura de banco de dados adequada, com tabelas para páginas de resgates, resgates, opções de tamanho, perguntas e respostas.
  • Operações da API para criação e consulta de resgates.
  • Testes unitários e de integração para validar as funcionalidades.

Estrutura do Banco de Dados

Database Structure

Como rodar a aplicação

No terminal, clone o projeto:

git clone git@github.com:thalis-freitas/redeems-challenge-ruby.git

Acesse a pasta do projeto:

cd redeems-challenge-ruby

Certifique-se de que o Docker esteja em execução em sua máquina e construa as imagens:

docker compose build

Suba o servidor:

docker compose up app

As requisições da API estão disponíveis no repositório Redeems API Requests.

Como rodar os testes

docker compose up test

Documentação da API

Para acessar a documentação da API, abra seu navegador e vá para:

http://localhost:3000/api-docs

A documentação estará disponível no Swagger UI, onde você poderá explorar todos os endpoints da API, verificar as requisições, parâmetros e respostas esperadas.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published