Home

Awesome

RealWorld Example App

RealWorld Frontend CI

KVision codebase containing real world examples (CRUD, auth, advanced patterns, etc) that adheres to the RealWorld spec and API.

Demo    RealWorld

This codebase was created to demonstrate a fully fledged fullstack application built with KVision including CRUD operations, authentication, routing, pagination, and more.

We've gone to great lengths to adhere to the KVision community styleguides & best practices.

For more information on how to this works with other frontends/backends, head over to the RealWorld repo.

How it works

The frontend part is based on the frontend only application, created with KVision and written in pure Kotlin/JS.

This fullstack version is using KVision server side interfaces with Spring Boot backend. It's based on Kotlin multiplatform architecture, with the common code shared between the frontend and the backend side, and automatically generated JSON-RPC endpoints.

The backend application is heavily based on Kotlin coroutines, utilizing Spring Webflux and R2DBC fully asynchronous and non-blocking services and interfaces.

The project is using in-memory H2 database during development and PostgreSQL when deployed to Heroku.

Getting started

Make sure you have JDK 8 or higher installed. Check other requirements of KVision here.

The project is build with Gradle Wrapper. Run Gradle build with ./gradlew or gradlew.bat command.

Running

Run in two separate terminals:

Open http://localhost:3000 in a browser to work with both servers.

Packaging

Run with java -jar kvision-realworld-example-app-fullstack-1.0.0-SNAPSHOT.jar command.

Testing

Deploying to Heroku