Atlas codebase demonstrates practical usage of real world example that abides to RealWorld spcifications and API
- Clone the repository
- Download and import postman collection for testing
- Run the project
The server is configured to start on 7003 with api/v1/
context, but you can change it in application.conf file.
- Kotlin as programming language
- Ktor as web framework
- Koin as dependency injection framework
- KotlinX JSON as data bind serialization/deserialization
- Java-jwt for JWT spec implementation
- HikariCP as datasource to abstract driver implementation
- H2 as database
- Exposed as Sql framework to persistence layer
- slugify
- Swagger for API preview
+ core/
All application setup, exceptions, extensions, etc
+ config/
Contains main module with neccessary server setup and plugins definitions
+ di/
+ exceptions/
+ extensions/
+ navigation/
+ security/
+ features/
+ articles/
+ data/
Persistence layer and tables defintion
+ domain/
Bridge between layers, holding DTOs and contracts
+ presentation/
Classes and methods to map actions to routes
+ comments/...
+ profiles/...
+ tags/...
+ users/...
- Application.kt <- Entry point
If you want to contribute to this project, you're always welcome!
If you need any help, feel free to contact me: kenan.karic@outlook.com.