Skip to content

Sistema para cadastro e consulta de usuários (exibição em XLSX, CSV, JSON) desenvolvido em Django e ReactJS

Notifications You must be signed in to change notification settings

Eslley/desafio-django-react

Repository files navigation

Desafio Django React

Para utilizar a aplicação acesse link

Descrição do projeto

  • Aplicação single para cadastro e consulta de usuários (exibição em XLSX, CSV, JSON) desenvolvido em Django e ReactJS

Funcinalidades

  • Cadastro de usuários
  • Login
  • Download dos dados dos usuários em formato JSON
  • Download dos dados dos usuários em formato CSV
  • Download dos dados dos usuários em formato XLSX

Tecnologias/Bibliotecas Utilizadas

  • Django Rest
  • React
  • Material UI
  • React Hook Form
  • Axios

Snapshot da aplicação

Documentação da API

URL Base: https://desafio-tech.herokuapp.com/api/

  • GET /usuarios?format={format}

    Exibe todos os usuários do sistema

    • format:
      • json - Retorna no formato JSON
      • csv - Retorna no formato CSV
      • xlsx - Retorna no formato XLSX
  • POST /usuarios/create

    Cadastra um novo usuário no sistema, caso a senha não seja informada é gerada uma aleatória

    Request:

    {
      "login": "rubem",
      "senha": "12345",
      "dt_nascimento": "2000-01-01"
    }
    

    Response:

    {
     "id": 1
     "login": "rubem",
     "senha": "12345",
     "dt_nascimento": "2000-01-01"
    }
    
    Status: 201
    

    Response com erro (caso login já exista):

    {
       "login": [
           "usuario model with this login already exists."
       ]
    }
    
    Status: 400
    
  • POST /usuarios/login

    Autentica o usuário no sistema

    Request:

    {
      "login": "rubem",
      "senha": "12345"
    }
    

    Response:

    {
      "id": 1
      "login": "rubem",
      "senha": "12345",
      "dt_nascimento": "2000-01-01"
    }
    
    Status: 200
    

    Response com erro:

    {
      "message": "Erro ao realizar login, verifique login e/ou senha"
    }
    
    Status: 401
    
  • DELETE /usuarios/delete/{id}

    Deleta um usuário do sistema

    Response:

    {
       "message": "Usuário deletado com sucesso"
    }
    
    Status: 200
    

    Response com erro (caso usuário não exista):

    {
       "message": "Usuário não encontrado"
    }
    
    Status: 404
    

Para executar o aplicação localmente

OBS: é necessário o arquivo .env na raiz do projeto

  • Instalar e ativar uma máquina virtual python
  $ python -m venv myvenv
  $ ./myvenv/Scripts/activate
  • Instalar dependências do projeto python
  $ pip install -r requirements.txt
  • Instalar dependências do node.js e gerar /build
  $ npm install
  $ npm run build
  • Subir servidor do Django
  $ python manage.py runserver

About

Sistema para cadastro e consulta de usuários (exibição em XLSX, CSV, JSON) desenvolvido em Django e ReactJS

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published