API desenvolvida como Projeto Final com o auxílio da professora Paula Allemand para a conclusão do curso de Backend {Reprograma}
Durante a pandemia muitos animais foram abandonados, aumentando consideravelmente o número de animais vivendo na rua. Um grupo de pessoas que já cuidava dos animais que viviam na rua, passou a receber estes animais em suas casas até encontrar um lar para cada um. Porém, o unico meio de divulgação dos animais disponíveis para adoção é o whatsApp, tornando o processo de adoção restrito, além de não existir um controle de animais adotados e ou disponíveis para adoção, já que eles permanecem em lares diferentes. Assim surgiu a ideia deste projeto, que é encontrar um lar reponsável para os animais que encontram-se abandonados, tendo um controle entre animais já adotados e os que ainda estão para adoção.
Existem muitas pessoas que querem adotar um cão ou um gato, porém, na maioria das vezes estas pessoas não tem acesso ou conhecimento de onde encontrar estes animais, já que na cidade não existe um ambiente que seja referência onde estes animais possam permanecer enquanto aguardam ser adotados.
É desejável futuramente, a implementação e ampliação deste projeto, para que além de encontrar o pet que procura para adotar, as pessoas possam também fazer a doação de alimentos, medicamentos, castrações e objetos nescessários para manter os cuidados com os animais de rua.
O projeto é uma API REST que permite que os animais que estão disponíveis para adoção sejam cadastrados, mostrando quando estão disponíveis e também quando já tiverem sido adotados.
A interface é um CRUD completo integrado com o banco de dados, onde é possível listar os animais que estão disponíveis para adoção.
- Listar todos os animais que estão cadastrados no sistema;
- Listar animais por ID.
- Cadastrar pets que estejam em lares temporarios;
- Atualizar os dados desses pets, caso haja mudança de cidade.
- Deletar esse pet quando for adotado;
O projeto final consiste em uma API fundamentada no CRUD, que são: CREATE (CRIAR), READ(LER-CONSULTA), UPDATE(ATUALIZAR) e DELETE(DESTRUIÇÃO).
Para a construção do projeto, as seguintes tecnologias foram utilizadas:
📁 Adote-um-pet
|
|- 📁 src
| |
| |- 📁 controller
| |- 📑 adoteUmPetController.js
|
|
| |- 📁 database
| |- 📑 mongoConfig.js
|
|
| |- 📁 models
| |- 📑 adoteUmPetSchema.js
|
|
| |- 📁 routes
| |- 📑 adoteUmPetRoutes.js
|
| |- 📑 app.js
|
|
|- 📑 .env
|- 📑 .env.example
|- 📑 .gitignore
|- 📑 package-lock.json
|- 📑 package.json
|- 📑 README.md
|- 📑 server.js
-
local: http://localhost:9000
Método HTTP | Endpoint | Descrição |
---|---|---|
GET | http://localhost:9000/ |
Mensagem de apresentação (Index) |
Método HTTP | Endpoint | Descrição |
---|---|---|
GET | /todos |
Retorna todos os animais |
GET | /todos/:id |
Retorna todos os animais por ID |
POST | /criar |
Cria/cadastra um novo animais |
PUT | /atualizar/:id |
Altera informações de um animais |
DELETE | /deletar/:id |
Deleta um animais específico |
- id: gerado automaticamente
- nome: texto e obrigatório
- cidade: texto e obrigatório
- animal: texto e obrigatório
{
"message": "Cadastro realizado com sucesso",
"cadastrarPets": {
"nome": "Adote",
"cidade": "Pesqueira",
"animal": "cachorro",
"_id": "61b966dc26f06dcbd505bbf6",
"__v": 0
}
}
- Realizar a construção do front-end
- Incrementar autenticação
- Adicionar testes
Aceito sugestões que sejam viaveis para melhorar a vida destes animais que nos fazem tanto bem.
São tantas pessoas para agradecer! mas vamos por parte. Foram muitas as pessoas que de forma direta ou indireta, colaboraram para que este momento de aprendizagem fluisse. Então primeiro agradeço a Deus, por ter dado a mim, o privilégio de viver estes momentos de aprendizagem com pessoas de corações tão bons. Agradeço a minha família que sempre me deixou quieta no quarto durante as aulas rsrs. Agradeço a todas as professoras e monitoras, vocês são incriveis. Agradeço as meninas do grupo reprogramadas, sempre tão solicitas e unidas. E o meu agradecimento especial a Hannah Freitas e Raquel Andrade que me buscaram pela mão e me levantaram. Sem vocês, eu não teria chegado ao fim.