Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/thenriquedb/begou-api
Aplicativo que tem como objetivo auxiliar a equipe dos abrigos e Organização Não Governamental (ONGs) a divulgar e arrecadar verba para animais que se encontram em condição de fragilidade.
https://github.com/thenriquedb/begou-api
api-rest cd ci clean-architecture docker express jest mysql nodejs rest solid sqlite typeorm typescript
Last synced: 7 days ago
JSON representation
Aplicativo que tem como objetivo auxiliar a equipe dos abrigos e Organização Não Governamental (ONGs) a divulgar e arrecadar verba para animais que se encontram em condição de fragilidade.
- Host: GitHub
- URL: https://github.com/thenriquedb/begou-api
- Owner: thenriquedb
- Created: 2022-09-02T17:48:21.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-03-07T01:50:22.000Z (almost 2 years ago)
- Last Synced: 2024-11-08T21:54:15.781Z (2 months ago)
- Topics: api-rest, cd, ci, clean-architecture, docker, express, jest, mysql, nodejs, rest, solid, sqlite, typeorm, typescript
- Language: TypeScript
- Homepage: https://api.begou.xyz/api-docs/
- Size: 1.41 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Begou
## Índice
- [Begou](#begou)
- [Índice](#índice)
- [1. Introdução](#1-introdução)
- [2. Motivação](#2-motivação)
- [3. Objetivos](#3-objetivos)
- [4. Projeto](#4-projeto)
- [4.1 Arquitetura](#41-arquitetura)
- [4.2 Configurando o projeto](#42-configurando-o-projeto)
- [4.3 Comandos](#43-comandos)
- [4.4 Usuários pré-cadastrados](#44-usuários-pré-cadastrados)
- [5. Documentação](#5-documentação)## 1. Introdução
Aplicativo que tem como objetivo auxiliar a equipe dos abrigos e Organização Não Governamental (ONGs) a divulgar e arrecadar verba para animais que se encontram em condição de fragilidade.## 2. Motivação
De acordo com a pesquisa realizada pelo Instituto Pet em 2019, apontou que o Brasil possui cerca de 3,9 milhões de animais que se encontram na Condição de Vulnerabilidade.Com isso
## 3. Objetivos
- Auxiliar ONGs no processo de localização e captura de animais;
- Arrecadação de verbas para as ONGs cadastradas;
- Facilitar o processo de quem quer ajudar em relação ao abandono dos animais;
- Incentivar a adoção dos animais resgatados;
- Facilitar o processo de quem quer ajudar em relação ao abandono dos animais;## 4. Projeto
### 4.1 Arquitetura
O projeto foi criado utilizando a arquitetura limpa. Este padrão foi proposto pelo Robert C. Martin (Uncle Bob) em seu blog pessoal no ano de 2012. Essa arquitetura tem como objetivo produzir sistemas que são:- Independência de frameworks;
- Testabilidade;
- Independência de UI;
- Independência de banco de dados;
- Independência de fatores externos;### 4.2 Configurando o projeto
**Depedências globais**
- Node v16 (ou superior);
- Docker engine com Docker compose;### 4.3 Comandos
**`yarn bootstrap`**: configura o schema do banco de dados e o popula com os dados pré definido;
**`yarn dev`**: roda a aplicações no modo desenvolvimento;
**`yarn build`**: gera uma build de produção;
**`yarn start`**: roda a build de produção;
**`yarn migration:create `**: Cria uma nova migration;
**`yarn migration:revert`**: Reverte as alterações realizadas pelas migration;
**`yarn migration:run`**: Executa todas as migrations pendentes;`
**`yarn seed`**: Popula o banco de dados com algumas informações padrões.
### 4.4 Usuários pré-cadastrados
Ao rodar o comando `yarn bootstrap` será criado criado dois usuários, no qual um possui *role* de fundador e pode realizar operações de cadastrar e editar animais de uma instituição.Segue abaixo as credenciais destes dois usuários:**Usuário fundador**:
```
Email: [email protected]
Senha: 123456
```**Usuário comum**:
```
Email: [email protected]
Senha: 123456
```## 5. Documentação
Documentação criada utilizando o padrão [**OpenAPI 3.0**](https://swagger.io/specification/) juntamente com a biblioteca [**Swagger**](https://swagger.io/).
Link para a documentação da API