postgresql-exposed-orm

Design PostgreSQL schemas and Exposed ORM migrations for Kotlin projects.

Updated Mar 5, 2026
One-click install
npx skills add https://github.com/Astrumon/Spovishun --skill postgresql-exposed-orm
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: postgresql-exposed-orm
Source: https://github.com/Astrumon/Spovishun/tree/main/.claude/skills/postgresql-exposed-orm
Command: npx skills add https://github.com/Astrumon/Spovishun --skill postgresql-exposed-orm

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill helps Kotlin developers who work with PostgreSQL and the Exposed ORM to design robust schemas, choose between DSL and DAO patterns, and manage migrations safely with Flyway or Liquibase. It also provides best practices for transactions, query patterns, and connection handling.

Core Features & Use Cases

  • Schema design guidance for Exposed ORM (Tables, relations, indices)
  • Transaction and migration best practices (Flyway/Liquibase) and safe transaction boundaries
  • Guidance on when to use DSL vs DAO, sample query patterns

Quick Start

Set up a Kotlin project with Exposed and PostgreSQL, configure Flyway migrations, and run a basic sample query.

Frequently Asked Questions about postgresql-exposed-orm

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

FAQPage Schema
How do I design a PostgreSQL schema using Kotlin Exposed ORM?

To design a PostgreSQL schema with Kotlin Exposed ORM, define table objects, relations, and indices directly in Kotlin code. This approach provides type-safe schema creation while aligning with PostgreSQL database structures and best practices.

What is the best way to manage Flyway migrations for PostgreSQL in Kotlin applications?

The best way to manage Flyway migrations for PostgreSQL in Kotlin is to version your SQL migration scripts and apply them safely alongside Exposed ORM table definitions. This ensures reliable schema evolution and transactional consistency across deployments.

When should I use DSL vs DAO patterns in Kotlin Exposed ORM?

You should choose DSL vs DAO patterns in Kotlin Exposed ORM based on your query complexity. DSL offers type-safe SQL-like syntax for direct queries, while DAO provides an entity-object abstraction better suited for managing complex relational data mappings.

How do I handle transactions safely with Exposed ORM and PostgreSQL?

Handle transactions safely with Exposed ORM and PostgreSQL by wrapping database operations within explicit transaction boundaries. This ensures atomic query execution and maintains data integrity during schema modifications and routine CRUD operations.

Can I use Liquibase instead of Flyway for Kotlin Exposed ORM migrations?

Yes, you can use Liquibase instead of Flyway for Kotlin Exposed ORM migrations. Both tools are supported for safe schema evolution, allowing you to manage database versioning and transaction boundaries effectively within your Kotlin applications.