Skip to content
This repository has been archived by the owner on Jul 13, 2021. It is now read-only.


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.
Latest commit message
Commit time


This sample uses plugins, which will be deprecated. There is a new repository with actual Kotlin version and Kotlin/JS Gradle plugin.

Thinkter: A Kotlin Full-stack Application Example

Thinkter is an example of a full-stack Web application built with Kotlin. The backend runs on the JVM, and the browser front-end uses React. The example implements a very simple microblogging application.


The backend of Thinkter is built using Ktor, a Web framework built by the Kotlin team. For data persistence, it uses H2, allowing you to run the example without the need to configure an external SQL server. The HTTP server implementation is provided by Jetty.

To run the backend, use ./gradlew backend:run, or open Thinkter as a project in IntelliJ IDEA and execute the shared run configuration Backend :: Jetty. This will start serving the REST API of the backend on port 9090.


The frontend of Thinkter is built using React. To adapt the React APIs to Kotlin, it incorporates a set of wrappers, which you can also use in your projects and adapt to your needs.

The project is built using webpack and the Kotlin frontend plugin.

To run the frontend, use ./gradlew frontend:run. This will start a webpack server on port 8080. Navigate to http://localhost:8080 to start using the application.