This is a prototype of a REST API for tracking raw material defects and deriving corrective actions.
Feature | Technology |
---|---|
Authentication/Authorization - JWT authentication - Rate Limiting |
Spring Security - jwt.io - Token Bucket with Bucket4J & Concurrent Requests Limiting |
Logging | Logback |
File upload/download | MinIO |
Database | PostgreSQL |
API Documentation | Swagger |
Unit Testing | JUnit 5, Mockito |
Integration Testing | Spring Boot Test, Testcontainers |
Containerization | Docker |
- Docker
- Provide the following values as environment variables:
## PostgreSQL configuration
DATABASE_URL
DATABASE_USERNAME
DATABASE_PASSWORD
### JWT configuration
JWT_SECRET_KEY
### E-Mail configuration
SENDER_MAIL_ADDRESS
SPRING_MAIL_HOST
SPRING_MAIL_USERNAME
SPRING_MAIL_PASSWORD
### Minio configuration
MINIO_ENDPOINT
MINIO_ACCESS-KEY
MINIO_SECRET-KEY
MINIO_BUCKET-NAME
- Enter
http://localhost:8080
after startup for Swagger API documentation. - or visit life demo at https://dtapi.konstantinwolters.com