- The application receives the requested information to generate QR code containing text message, color, background color and size with file upload option or not through through `/api/v1/qr-generator`
- The QR code is generated through validations defined below
- color validation to check whether color is defined as hex color code
- text length validation to check whether text is ranged between two defined length size (1-50)
- Size validation to check whether if the size should be defined as small, medium and lastly large
Method | Url | Description | Valid Request Params |
---|---|---|---|
POST | /api/v1/qr-generator | Qr Code Generator with Image | Info |
POST | /api/v1/qr-generator | Qr Code Generator without Image | Info |
http://localhost:8080/api/v1/qr-generator
form-data
text : Merhaba
size : small
color : #0046FF
backgroundColor : #64FF00
imageFile : File Upload
http://localhost:8080/api/v1/qr-generator
form-data
text : Merhaba
size : small
color : #0046FF
backgroundColor : #64FF00
- Java 17
- Spring Boot 3.0
- Open API Documentation
- Restful API
- Spring Boot Validation
- Google Zxing Core
- Google Zxing Java Standart Edition (SE)
- Lombok
- Maven
- Junit5
- Mockito
- Integration Tests
- Docker
- Docker Compose
- Maven or Docker
The application can be built and run by the Docker
engine. The Dockerfile
has multistage build, so you do not need to build and run separately.
Please follow directions shown below in order to build and run the application with Docker Compose file;
$ cd qr-generator-example
$ docker-compose up -d
To build and run the application with Maven
, please follow the directions shown below;
$ cd qr-generator-example
$ mvn clean install
$ mvn spring-boot:run
You can reach the swagger-ui through the link shown below
http://localhost:8080/swagger-ui/index.html