Skip to content

bashor/geospatial-messenger

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is a sample application that demonstrates how to build a Kotlin + Spring Boot applications with a PostgreSQL database. The code is very concise, and the generated application is a 18 MBytes self-contained executable jar with low memory consumption.

A detailed blog post describing this application is available here.

It is used as a playground to demonstrate various features:

A Spring Data version based on spring-data-jdbc-repository is also available in this branch. There is no Spring Data JPA version yet but feel free to fork this repo and contribute it with a pull request!

Run the application

  • Install a PostgreSQL database with PostGis extension, on Mac you can use Postgresapp.
  • Clone this repository.
  • Customize database configuration on application.yml.
  • Run it within your IDE or with ./gradlew bootRun.
  • Open http://localhost:8080/ in your browser. Screenshot
  • Documentation should be available at http://localhost:8080/docs/index.html when run from the JAR.

Improvements I have in mind

  • Use Kotlin JS instead of Javascript for client side.
  • Exposed issue #25: allow to support SQL transaction with @Transactional.
  • Spring HATEOAS issue #401: add HATEOAS support, but without having to extend ResourceSupport or wrapping it into a Resource<Foo> container .
  • Kotlin issue KT-11235: avoid mandatory usage of arrayOf in annotation array attribute (for example in @SpringApplicationConfiguration(classes = arrayOf(Application::class)).

About

Geospatial messenger application written with Spring Boot + Kotlin + PostgreSQL

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Kotlin 79.2%
  • JavaScript 17.1%
  • HTML 3.6%
  • CSS 0.1%