kotlin-exposed-patterns

Implement Kotlin Exposed ORM patterns for data access and repository layers.

3|2|Updated Mar 8, 2026
One-click install
npx skills add https://github.com/agentmatters/mullai-bot --skill kotlin-exposed-patterns-agentmatters
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: kotlin-exposed-patterns
Source: https://github.com/agentmatters/mullai-bot/tree/main/src/Mullai.Skills/Skills/claude-code-everything/kotlin-exposed-patterns
Command: npx skills add https://github.com/agentmatters/mullai-bot --skill kotlin-exposed-patterns-agentmatters

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Patterns and tooling for Kotlin Exposed ORM to standardize data access and reduce boilerplate across services.

Core Features & Use Cases

  • DSL and DAO patterns for database interaction with Exposed.
  • Transaction management with coroutine-friendly blocks and isolation control.
  • Production-ready setup including HikariCP pooling and Flyway migrations.
  • Repository pattern to decouple business logic from data layer and enable testing.
  • JSON support with kotlinx.serialization for JSON/JSONB columns.
  • Testing strategies with in-memory databases and migration support.

Quick Start

Set up a Kotlin project with Exposed, configure HikariCP, run Flyway migrations to initialize the database.

Frequently Asked Questions about kotlin-exposed-patterns

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up Kotlin Exposed with HikariCP and Flyway for database migrations?

Kotlin Exposed standardizes data access by applying repository patterns to decouple business logic from the data layer. It reduces boilerplate across services by providing consistent DSL and DAO patterns for database interaction.

How do I manage transactions in Kotlin Exposed using coroutines?

Kotlin Exposed supports JSON columns natively through kotlinx.serialization. This allows storing and retrieving complex JSON or JSONB data types directly within Exposed table definitions.

How do I test Kotlin Exposed repositories with in-memory databases?

Kotlin Exposed testing strategies utilize in-memory databases with migration support. This enables isolated repository pattern testing by running Flyway migrations against an in-memory instance for fast, reliable test execution.

Can I use the repository pattern with Kotlin Exposed to decouple business logic?

The repository pattern in Kotlin Exposed decouples business logic from the data layer to enable testing. It abstracts database interactions behind repository interfaces, allowing domain code to remain independent of Exposed DSL or DAO specifics.