/Imoveis-api

Resolução de um desafio back-end

Primary LanguageTypeScript

Imóveis API 🏠

Tecnologias 🛠️

  • Express
  • Typeorm
  • Postgres
  • Jwt
  • Bcryptjs
  • uuid v4
  • Typescript

Rotas 🚀

  • Lembre-se de utilizar o token recebido após efetuar o login nos headers!

    • Exemplo: "Authorization": "jwt_token".

      Autenticação ⚡
          Cadastro de usuário: /register
      
          -> Método POST
          body: { 
                 "name": "Exemplo",
                 "cpf": "000.000.000-00",
                 "email": "exemplo@gmail.com"
                 "password": "senha"
          }
      
          Login de usuário: /login
      
          -> Método POST
          body: {
               "email": "exemplo@gmail.com",
               "password": "senha"
          }
      
      Gerenciar imóveis ⚡
         Adicionar um imóvel:
         rota: /properties/create
      
         -> Método POST
      
         body: {
             "cep": "00000-00"
             "number": "0000",
             "complement": "00",
             "value": "16000",
             "bedrooms": "3",
             "avaliable": true
         }
      
         Remover um imóvel:
         Rota: /properties/remove
      
         ⚠️ o id pode ser obtido ao criar um imóvel
      
         -> Método POST
      
         body: {
             "id": "_aqui_vai_o_id_do_imóvel"
         }
      
      Atualizar um imóvel 🛠️
         -> rota: /properties/update 
      
           -> Método POST
           -> ⚠️ Você pode enviar a requisição somente com o id e valor que quer alterar!
      
         Exemplo:
      
           body {
                "id": "id_do_imóvel",
                "avaliable": true
           }
      
         Valores permitidos: 
      
           body {
                id -> id do imóvel
                cep -> cep do imóvel
                number -> número do imóvel
                complement -> complemento do imóvel
                value -> valor do imóvel
                bedrooms -> quantidade de quartos
                avaliable -> true/false | se o imóvel está disponível ou não
           }
      
      Buscar imóveis ⚡
         Buscar por um imóveis próximos: 
         -> http://localhost:8000/properties/search?cep=00000-00
      
         Ver todos os imóveis:
         -> http://localhost:8000/properties
      

  • Como iniciar o projeto?

    • 1- Em seu terminal digite: # -> git clone https://github.com/Al3xsandro/imoveis-api.git

      • Logo após verifique se você tem a última versão estável do nodejs em seu dispositivo.
    • 2- Após os procedimentos, entre na pasta do projeto e use seu gerenciador de pacotes, que pode ser tanto yarn ou npm $ yarn ou npm

    • 3- Depois de efetuar a instalação das dependências contidas no package.json, configure o arquivo env.example que está na raiz do projeto.

    • 4- Em seu terminal, após configurar o env.example: $ yarn typeorm migration:run

    • 5- Após isso você já pode iniciar o projeto com o comando $ yarn start ou npm start