https://github.com/pauloruszel/api-qr-code
Este é um projeto de API RESTful e Frontend Angular para geração de QR Codes. Com ele, é possível criar QR Codes personalizados com diferentes tamanhos, cores e opções de download ou visualização.
https://github.com/pauloruszel/api-qr-code
angular java-17 lombok spring-boot spring-webflux zxing-qrcode
Last synced: 10 days ago
JSON representation
Este é um projeto de API RESTful e Frontend Angular para geração de QR Codes. Com ele, é possível criar QR Codes personalizados com diferentes tamanhos, cores e opções de download ou visualização.
- Host: GitHub
- URL: https://github.com/pauloruszel/api-qr-code
- Owner: pauloruszel
- Created: 2023-08-11T05:30:20.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-03-13T23:05:55.000Z (about 1 year ago)
- Last Synced: 2025-02-17T07:35:34.755Z (3 months ago)
- Topics: angular, java-17, lombok, spring-boot, spring-webflux, zxing-qrcode
- Language: Java
- Homepage:
- Size: 24.7 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🎯 API QR Code
Este é um projeto de API RESTful para geração de QR Codes. Com ele, é possível criar QR Codes personalizados com diferentes tamanhos, cores e opções de download ou visualização.## Padrões de microserviço utilizados
* Separação em camadas (Controller, Service)
* Injeção de dependências com Spring
* Uso de Record para representação de dados## ✔️ Tecnologias e bibliotecas usadas
- `Java 17`
- `Spring Boot`
- `Spring WebFlux`
- `Lombok`
- `ZXing`## Endpoint
### Gerar QR Code- Método: `GET`
```bash
URL: /api/v1/qrcode?texto={texto}&scale={scale}&foreground={foreground}&background={background}&download={download}&base64={base64}
```
Descrição: Endpoint para gerar um QR Code com as opções especificadas.Parâmetros
- `texto:` O texto que será codificado no QR Code.
- `scale:` A escala(tamanho) do QR Code.
- `foreground:` A cor do primeiro plano do QR Code.
- `background:` A cor do plano de fundo do QR Code.
- `download:` Opção para download do QR Code (valores possíveis: "true", "false").
- `base64:` Opção para retornar o QR Code em formato base64 (valores possíveis: "true", "false").### Exemplo de teste
Você pode testar o endpoint com o seguinte payload:
```json
{
"texto": "https://www.reddit.com",
"scale": 200,
"foreground": "#9C27B0",
"background": "#E1BEE7",
"download": "false",
"base64": "false"
}
```## 🛠️ Execução do projeto
Para executar o projeto, é necessário ter o Java 17 e o Maven instalados.## 🚀 Como usar
## Clone o repositório:
git clone https://github.com/pauloruszel/api-gen-barcode.git## 📁 Entre na pasta do projeto:
```bash
cd api-gen-barcode
```
### Execute o comando abaixo para compilar e empacotar o projeto:
```bash
mvn clean package
```
## 🐳 Execute o docker-compose:
```bash
docker-compose up --build
```
A API estará disponível em http://localhost/## Testes unitários
Para rodar os testes unitários, execute o comando abaixo:
```bash
mvn test
```## Observações:
A aplicação permite a geração de QR Codes personalizados, incluindo opções para definir o tamanho, as cores do primeiro plano e do fundo, e se a imagem deve ser baixada ou visualizada no navegador. Também é possível retornar a imagem em formato base64.