An open API service indexing awesome lists of open source software.

https://github.com/gahbr/rede-social-java-spring

Rede Social em Java com autenticação, containerização, buckets e mensageria
https://github.com/gahbr/rede-social-java-spring

bcrypt java jwt jwt-authentication kafka localstack mongodb s3 social-network spring spring-boot spring-security spring-web

Last synced: 3 months ago
JSON representation

Rede Social em Java com autenticação, containerização, buckets e mensageria

Awesome Lists containing this project

README

        

# 🦜Parrot - BACKEND


Gabriel Ribeiro

## 💻 Sobre o projeto
Projeto final do Programa Trainee [SysMap](https://sysmap.com.br) de Excelência Full Stack | 3ª edição e trata-se de uma rede social feita em Java com o Framework Spring.

## 🧰 Tecnologias utilizadas

* Java
* Springboot
* Spring Web
* Spring Data
* Spring Security
* Lombok
* Bcrypt
* MongoDB
* Swagger API
* JWT (JSON Web Token) Authentication
* Docker
* Localstack
* Bucket AWS S3
* Kafka
* Apache Zookeeper


## ⚙ Requisitos
Para poder rodar este projeto, você deverá ter os seguintes programas instalados:
- Docker


## 👩‍💻Instalação

* Clone este projeto
* Entre na pasta raiz de "Gabriel-Ribeiro-Backend" e abra o arquivo docker-compose.yaml
* Após isso, insira no terminal o comando abaixo para buildar o back-end:

```
mvn clean package -DskipTests
```
* Para subir o Docker Compose:
```
docker-compose up
```
* Entre no terminal do container do Localstack e insira o comando para definir o usuário padrão:
```
aws configure --profile default
```
```
AWS Access Key ID [None]: mykey
AWS Secret Access Key [None]: mykey
Default region name [None]: us-west-2
Default output format [None]: json
```

* Após definir o usuário, insira o código abaixo para criar o bucket S3.
```
aws s3 mb s3://demo-bucket --endpoint-url http://localhost:4566
```

![terminal](https://user-images.githubusercontent.com/80289718/236905442-d81e9d9f-0035-48ce-816a-6e0506f0cdc1.jpg)

## ⚠️⚠️⚠️
```diff
@@ CASO VOCÊ PARE O CONTAINER, TERÁ QUE CRIAR O BUCKET NOVAMENTE ! @@
```
🚏 Isso acontece porque estamos utilizando uma versão gratuita do [Localstack](https://localstack.cloud)

* Após ter concluido as configurações iniciais, você está pronto para utilizar o sistema!


## 🛣 Documentação SWAGGER
Para acessar a documentação SWAGGER e fazer os testes de requisições, use a seguinte rota :
### ```GET /swagger-ui/index.html```
### ```localhost:8080/swagger-ui/index.html```

![swagger](https://user-images.githubusercontent.com/80289718/236886929-2b8c53a6-291a-470e-addf-f2cd8a12befe.png)
### Obs: Não esqueça de fazer a autenticação no swagger antes de fazer as requisições!
![Screenshot 2023-05-09 110415](https://github.com/bc-fullstack-03/Gabriel-Ribeiro-Backend/assets/80289718/1edaff42-5d46-4e15-bee6-ff8dd479563f)

## :construction: Status
### __**Ambiente de Back-end da Aplicação**__ - [STATUS: Finalizado✅]
### __**Ambiente de Front-end da Aplicação**__ - [STATUS: Finalizado✅] ![Link](https://github.com/Gahbr/Rede-Social-React)
### __**Ambiente de Mobile da Aplicação**__ - [STATUS: Finalizado✅] ![Link](https://github.com/bc-fullstack-02/Gabriel-Ribeiro/tree/main/mobile)

## 🦸 Autor


Gabriel Ribeiro


Gabriel Ribeiro


[![Linkedin Badge](https://img.shields.io/badge/-Gabriel-blue?style=flat-square&logo=Linkedin&logoColor=white&link=https://www.linkedin.com/in/gabriellribeiro1/)](https://www.linkedin.com/in/gabriellribeiro1/)
[![Yahoo!](https://img.shields.io/badge/Yahoo!-6001D2?style=flat-square&logo=Yahoo!&logoColor=white)](mailto:[email protected])
[![GitHub](https://img.shields.io/badge/Gahbr-%23121011.svg?style=flat-square&logo=github&logoColor=white)](https://github.com/Gahbr)