Welcome to Structus
We're excited to announce the launch of the official Structus documentation website!
What is Structus?
Structus is a pure Kotlin JVM library that provides the foundational building blocks for implementing Explicit Architecture - a synthesis of Domain-Driven Design (DDD), Command/Query Separation (CQS), and Event-Driven Architecture (EDA).
Why We Built This
Modern software development demands clean, maintainable, and testable code. However, many teams struggle with:
- Framework Lock-in: Tightly coupled to specific frameworks
- Mixed Concerns: Business logic scattered across layers
- Testing Difficulties: Hard to test in isolation
- Unclear Boundaries: No clear separation between layers
Structus solves these problems by providing a framework-agnostic foundation that enforces clean architecture principles.
Key Features
🚀 Pure Kotlin
No framework dependencies. Works with Spring Boot, Ktor, Micronaut, Quarkus, or pure Kotlin applications.
🔄 Coroutine-Ready
All I/O operations use suspend functions, making it perfect for modern asynchronous applications.
📦 Minimal Dependencies
Only Kotlin stdlib and kotlinx-coroutines-core. Nothing more.
🎨 Clean Architecture
Enforces proper layer separation and dependencies through well-defined interfaces.
Getting Started
Ready to try Structus? Check out our Quick Start Tutorial to build your first application in 15 minutes.
What's Next?
We're continuously improving Structus. Here's what's coming:
- Transactional Outbox Pattern: For reliable event publishing
- Saga Pattern Support: For distributed transactions
- Projections: CQRS read model support
- Multi-tenancy: Enterprise-grade support
Join Us
We're building Structus as an open-source community project. Whether you're using it in production or just exploring clean architecture concepts, we'd love to hear from you!
