Welcome! This project implements the relational document concepts for Java, Kotlin, Scala, and Groovy applications. It uses four different modules to provide an idiomatic developer experience across four major JVM languages.
Depend on Them
The coordinate structure for these packages is
<groupId>solutions.bitbadger.documents</groupId>
<artifactId>[module]</artifactId>
<version>1.0.0-RC1</version>
core   
This module does most of the heavy lifting for all languages. It provides an optimal Java experience and an optimal Kotlin experience when using a reflection-based JSON serializer. Queries that can return one-or-none return an Optional<T> instance. This module also has Kotlin extensions on the JDBC Connection type
groovy   
This far-out module provides Groovy-style extension methods on the Connection type. (Right on!)
scala   
This module provides a native Scala API for this library, using its collection types instead of the default Java collections, and returns the Scala Option[A] type for one-or-none queries. It also provides Scala extension methods for the Connection type.
kotlinx   
This module utilizes kotlix.serialization for its serialization and deserialization, which implements these actions without reflection. As its primary consumer is Kotlin, it returns null for one-or-none queries.
Read All about Them
- The "Docs" heading above will take you to the "Getting Started" page for these libraries, and is the entry point for all documentation (currently under active development). 
- The "Core API" heading links to the JavaDoc for the - coremodule. Groovy consumers can also review the- Connectionextension functions there.
- The "Scala API" heading links to the ScalaDoc for the - scalamodule.
- The "KotlinX API" heading links to the JavaDoc for the - kotlinxmodule.
Talk about Them
Bit Badger Solutions Git is not set up for account registration (yet! -- Homer Simpson). However, the author can be reached as @Bit_Badger on Twitter, daniel@fedi.summershome.org on the Fediverse, or via e-mail as daniel at the parent domain to this site's domain. This project is open to the public, so you will be able to track the progress of any issues you may report.