kotlin-exposed-patterns

Standardize Kotlin database access with Exposed ORM DSL and DAO patterns.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/yusufcmg/Agent_Memory_Systems --skill kotlin-exposed-patterns-yusufcmg
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: kotlin-exposed-patterns
Source: https://github.com/yusufcmg/Agent_Memory_Systems/tree/main/.claude/skills/kotlin-exposed-patterns
Command: npx skills add https://github.com/yusufcmg/Agent_Memory_Systems --skill kotlin-exposed-patterns-yusufcmg

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

JetBrains Exposed ORM patterns provide a standardized, production-ready approach to database access in Kotlin, unifying DSL and DAO usage along with safe transaction handling.

Core Features & Use Cases

  • DSL queries and DAO-based lifecycle management for entities
  • Coroutine-safe transactions using newSuspendedTransaction
  • HikariCP configuration for reliable connection pooling
  • Flyway migrations for versioned schema changes
  • Repository pattern to decouple business logic from the data layer
  • JSON support and Kotlin serialization patterns for complex data

Quick Start

Configure your Kotlin project to use Exposed with a repository layer and follow the patterns described.

Frequently Asked Questions about kotlin-exposed-patterns

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

FAQPage Schema
How do I handle Kotlin Exposed ORM transactions safely in coroutines?

To handle Kotlin Exposed transactions safely in coroutines, use the newSuspendedTransaction function. This pattern ensures transactional integrity and prevents blocking threads during asynchronous database operations.

What is the best way to structure Kotlin Exposed DSL and DAO repository patterns?

The best way to structure Kotlin Exposed patterns is by using a repository abstraction. This decouples business logic from data access by combining DSL queries for fetching data and DAO for entity lifecycle management.

How do I configure HikariCP connection pooling with Kotlin Exposed?

Configuring HikariCP connection pooling with Kotlin Exposed involves setting up reliable connection management parameters. This Skill provides the configuration patterns needed to ensure stable database connections for production-ready Kotlin backends.

Can I use Flyway database migrations with Kotlin Exposed ORM?

Yes, you can use Flyway database migrations with Kotlin Exposed. This combination provides versioned schema changes, ensuring your database structure remains synchronized with your Kotlin data access layer.

Does Kotlin Exposed support JSON serialization and complex entity data?

Yes, Kotlin Exposed supports JSON serialization for complex data. The framework provides specific patterns to handle JSON support and Kotlin serialization, allowing you to map intricate data structures to your database.

When should I separate business logic from my Kotlin Exposed data access layer?

You should separate business logic from your Kotlin Exposed data access layer when you need testable repository implementations. Using the repository pattern decouples your core logic, making it easier to test and maintain transactional boundaries.