https://github.com/neemiassgc/contact-manager-api
A RESTful api to manage contacts through CRUD operations. It was built with Java + Spring Boot + Postgres, protected with Spring Security + Oauth2 and deployed on App Angine with Supabase
https://github.com/neemiassgc/contact-manager-api
auth0 crud docker google-cloud-app-engine google-cloud-platform gradle hibernate java jpa lombok oauth2 portfolio postgresql spring-boot spring-data-jpa spring-security spring-security-oauth2 sql supabase swagger
Last synced: 2 months ago
JSON representation
A RESTful api to manage contacts through CRUD operations. It was built with Java + Spring Boot + Postgres, protected with Spring Security + Oauth2 and deployed on App Angine with Supabase
- Host: GitHub
- URL: https://github.com/neemiassgc/contact-manager-api
- Owner: neemiassgc
- License: mit
- Created: 2023-11-24T05:36:40.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-07-25T04:36:58.000Z (11 months ago)
- Last Synced: 2025-07-25T09:35:58.732Z (11 months ago)
- Topics: auth0, crud, docker, google-cloud-app-engine, google-cloud-platform, gradle, hibernate, java, jpa, lombok, oauth2, portfolio, postgresql, spring-boot, spring-data-jpa, spring-security, spring-security-oauth2, sql, supabase, swagger
- Language: Java
- Homepage:
- Size: 487 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[README in en-US :us:](https://github.com/neemiassgc/contact-manager-api/blob/main/README_en-US.md)
# Contact Manager API
Uma API Rest multiusuário, testada e documentada para gerenciar contatos com o propósito de demonstrar operações CRUD.








### Destaques :sparkles:
* Spring Boot + Spring Security integrado com Oauth2 atuando como servidor de recursos
* Spring Data JPA com Hibernate
* Postgres em nuvem fornecido pelo Supabase
* Multiusuário
* Documentada com Swagger ([link para documentação](https://mythic-guild-431115-g2.uc.r.appspot.com/swagger-ui/index.html))
* Imagem Docker no [Docker Hub](https://hub.docker.com/r/k4mek/contact-manager)
* Implantada no Google Cloud App Engine
### Diagrama do Banco de dados :page_facing_up:

### Demostração :fire:
Visite o projeto [Contact Manager UI](https://github.com/neemiassgc/contact-manager-ui) que cria uma interface Web para usar esta API.
### Test :test_tube:
Para executar os tests, é necessário um banco de dados Postgres. Para fazer isso, com o repositório já clonado, entre na raiz do projeto e execute o seguinte comando docker:
```bash
docker compose -f docker/postgres.yml up -d
```
Então use Gradle para executar os tests:
```bash
./gradlew test
```
### Execute localmente usando docker :cyclone:
Basta apenas usar o seguinte comando ```docker compose``` na raiz do projeto para ter a aplicação rodando:
```bash
docker compose -f docker/app.yml up -d
```
Depois disso, a API pode ser acessado em http://localhost:8080. Obs: Um token JWT é necessário para acessar a API.
### Licença :memo:
Esse projeto está sob a Mit License