Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vondacho/arch-blueprint-kotlin
A Kotlin-SpringBoot-Reactor backend application project as template and pedagogical support for teaching of Clean Architecture crafting practice.
https://github.com/vondacho/arch-blueprint-kotlin
cucumber hexagonal-architecture reactive-programming spring-boot spring-webflux structurizr
Last synced: 22 days ago
JSON representation
A Kotlin-SpringBoot-Reactor backend application project as template and pedagogical support for teaching of Clean Architecture crafting practice.
- Host: GitHub
- URL: https://github.com/vondacho/arch-blueprint-kotlin
- Owner: vondacho
- Created: 2021-05-22T16:58:42.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2023-05-30T18:04:18.000Z (over 1 year ago)
- Last Synced: 2024-10-31T10:22:48.009Z (2 months ago)
- Topics: cucumber, hexagonal-architecture, reactive-programming, spring-boot, spring-webflux, structurizr
- Language: Kotlin
- Homepage: https://vondacho.github.io/arch-blueprint-kotlin/
- Size: 7.1 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# arch-blueprint-kotlin
![build workflow](https://github.com/vondacho/arch-blueprint-kotlin/actions/workflows/build.yml/badge.svg)A Kotlin project as template and pedagogical support for the teaching of Clean Architecture crafting practice.
## Features
CRUD operations on client entities exposed by a REST API, and examples of problem-solving exposed by a Kotlin API.- Web request validation with [Swagger request validator](https://bitbucket.org/atlassian/swagger-request-validator/src/master/)
- Web security based on Basic Authentication
- Exception handling with [Zalando problem handling](https://github.com/zalando/problem-spring-web)
- Application management with Spring Actuator
- Acceptance testing with [Cucumber](https://cucumber.io/docs/cucumber/)
- Contract testing with [Pact](https://docs.pact.io/)
- Architecture testing with [ArchUnit](https://www.archunit.org/motivation)
- Reactive programming supported by Spring Webflux and [Reactor](https://projectreactor.io/)## Getting started
- Build the project with `./gradlew clean build`.
- Start the containerized database with `docker-compose up`.
- Launch the application locally with `gradlew bootRun --args='--spring.profiles.active=local,r2dbc'`
- Play use cases with Postman using [this default collection](https://vondacho.github.io/arch-blueprint-kotlin/postman/postman_collection.json) or with [Swagger UI](https://vondacho.github.io/arch-blueprint-kotlin/api/).## Documentation
Find full detailed documentation [here](https://vondacho.github.io/arch-blueprint-kotlin/) powered by [MkDocs](https://www.mkdocs.org/getting-started/)