kotlin-exposed-patterns

Standardize Kotlin database access with JetBrains Exposed ORM patterns.

3|Updated Jul 1, 2026
One-click install
npx skills add https://github.com/KeyValueSoftwareSystems/maestro --skill kotlin-exposed-patterns-keyvaluesoftwaresystems
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: kotlin-exposed-patterns
Source: https://github.com/KeyValueSoftwareSystems/maestro/tree/main/skills/stacks/kotlin/kotlin-exposed-patterns
Command: npx skills add https://github.com/KeyValueSoftwareSystems/maestro --skill kotlin-exposed-patterns-keyvaluesoftwaresystems

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires org.jetbrains.exposed:exposed-core, org.jetbrains.exposed:exposed-dao, org.jetbrains.exposed:exposed-jdbc, org.jetbrains.exposed:exposed-kotlin-datetime, org.jetbrains.exposed:exposed-json, org.postgresql:postgresql, com.zaxxer:HikariCP, org.flywaydb:flyway-core.

What problem does it solve?

This skill addresses the complexity of implementing type-safe, coroutine-ready database access in Kotlin applications by providing standardized patterns for the Exposed ORM.

Core Features & Use Cases

  • Exposed ORM Patterns: Implements both DSL and DAO query styles for flexible database interaction.
  • Production-Ready Infrastructure: Includes pre-configured patterns for HikariCP connection pooling, Flyway migrations, and repository-based decoupling.
  • Use Case: Use this skill to scaffold a clean data access layer that supports asynchronous transactions, JSONB column mapping, and comprehensive unit testing with in-memory H2 databases.

Quick Start

Use the kotlin-exposed-patterns skill to generate a repository implementation and database configuration for a new entity.

Frequently Asked Questions about kotlin-exposed-patterns

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

FAQPage Schema
How do I implement coroutine-safe database transactions in Kotlin using Exposed?

Coroutine-safe database transactions in Exposed require standardized patterns for asynchronous query execution and transaction scope management. This skill scaffolds repository layers that safely handle suspend functions within Exposed transaction blocks.

What's the best way to configure HikariCP connection pooling with JetBrains Exposed?

Configuring HikariCP connection pooling with Exposed involves setting up production-ready infrastructure patterns for efficient JDBC connection management. This skill provides pre-configured templates to initialize HikariCP alongside your Exposed database setup.

How do I map JSONB columns in Kotlin when using the Exposed ORM?

Mapping JSONB columns in Exposed requires specific extensions to handle JSON data types within your Kotlin entities. This skill implements patterns for JSONB column mapping using the exposed-json dependency for PostgreSQL databases.

Can I use Flyway for schema migrations with Exposed and PostgreSQL?

Yes, Flyway manages schema migrations alongside Exposed by applying versioned SQL scripts to your PostgreSQL database. This skill includes pre-configured Flyway migration patterns to ensure your database schema stays synchronized with your Kotlin entities.

How do I structure a repository layer with JetBrains Exposed DSL and DAO?

Structuring a repository layer with Exposed involves decoupling database access logic using both DSL and DAO query styles for flexible interaction. This skill generates standardized repository implementations to separate persistence logic from business rules.

Does Exposed support unit testing with an in-memory H2 database for Kotlin applications?

Yes, Exposed supports comprehensive unit testing using in-memory H2 databases to simulate PostgreSQL persistence layers. This skill provides testing patterns that configure H2 database connections for validating type-safe DSL queries without external dependencies.