Skip to content

A realworld api example app featuring Arrow, Kotlin and Spring Boot.

Notifications You must be signed in to change notification settings

karolkrasnowski/realworld-api

 
 

Repository files navigation

CircleCI

This is a realworld api example app featuring Arrow, Kotlin and Spring Boot.

NOTE: not yet feature complete, see TODOs.

Goals

  • experiment functional Kotlin backend programming using Arrow
  • implement realworld api spec in order to cover non-trivial use cases
  • production grade rest api with strong integration test suite to enable easy refactoring
  • clear separation of core business logic (realworld-domain) from the supporting infrastructure (realworld-app, realworld-infra)
    • framework independent domain
    • adopted ideas from onion, hexagonal and clean architectures (they might be all the same)
    • NOTE: realworld-app could be a submodule of realword-infra, but I wanted to put emphasis on the deliverables by using a separate top level module

Prior art

How to build

Prerequisites

Install Docker and Docker Compose:

Init DB

docker-compose up -d
./gradlew flywayMigrate

Build

./gradlew build

About

A realworld api example app featuring Arrow, Kotlin and Spring Boot.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Kotlin 99.9%
  • Shell 0.1%