KtorAdmin is a powerful, extensible, and schema-independent admin panel framework built specifically for Ktor.
Instead of relying on predefined database schemas, KtorAdmin automatically discovers your entities and generates a fully functional admin interface at runtime. Whether you're using relational databases through Hibernate or Exposed, or working with MongoDB, KtorAdmin adapts to your data model with minimal configuration.
Build production-ready admin panels in minutes, not days.
| Feature | Dark Mode | Light Mode |
|---|---|---|
| Dashboard | ![]() |
![]() |
| Data Panel | ![]() |
![]() |
| Create & Edit | ![]() |
![]() |
🔗 Demo Application https://ktoradmindemo-production.up.railway.app/admin
🔗 Demo Source Code https://github.com/Amirroid/KtorAdminDemo
- Automatic admin panel generation from your entities
- Support for Exposed, Hibernate, and MongoDB
- Schema-independent architecture
- Role-based access control (RBAC)
- Multiple authentication providers
- Custom admin actions
- Event system for create, update, and delete operations
- Built-in file management and thumbnail generation
- Rich text editor support
- Advanced filtering, searching, and sorting
- Data export capabilities
- Localization and multilingual support
- Production-ready performance and scalability
Most admin panel solutions require extensive setup, custom dashboards, or tightly coupled database schemas.
KtorAdmin takes a different approach:
- Less boilerplate
- Faster development
- Dynamic entity discovery
- Highly extensible architecture
- Works across SQL and NoSQL databases
Focus on building your application while KtorAdmin handles the administrative interface.
Integrating KtorAdmin into an existing Ktor application takes only a few steps.
plugins {
id("com.google.devtools.ksp") version "2.1.0-1.0.29"
}
repositories {
mavenCentral()
}
dependencies {
implementation("io.github.amirroid:KtorAdmin:<version>")
ksp("io.github.amirroid:KtorAdmin:<version>")
}fun Application.configureAdmin() {
install(KtorAdmin)
}fun Application.module() {
configureAdmin()
}http://localhost:8080/admin
Full documentation, guides, and advanced configuration options are available here:
https://amirreza-gholami.gitbook.io/ktor-admin
KtorAdmin is developed and maintained by amirroid and released under the MIT License.






