├── .gitignore ├── .idea ├── codeStyles │ ├── Project.xml │ └── codeStyleConfig.xml └── vcs.xml ├── LICENSE.md ├── README.md ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── license.md ├── settings.gradle ├── sorted_data.png └── src ├── main ├── kotlin │ └── com │ │ └── santansarah │ │ ├── AppRoutes.kt │ │ ├── Application.kt │ │ ├── CityRoutes.kt │ │ ├── UserRoutes.kt │ │ ├── data │ │ ├── CityDaoImpl.kt │ │ ├── CityDaoInterface.kt │ │ ├── CityModel.kt │ │ ├── DaoInterface.kt │ │ ├── Database.kt │ │ ├── Tables.kt │ │ ├── UserAppDaoImpl.kt │ │ ├── UserDaoImpl.kt │ │ └── UserModel.kt │ │ ├── domain │ │ ├── CityResponse.kt │ │ ├── UserResponse.kt │ │ └── usecases │ │ │ ├── EncryptApiKey.kt │ │ │ ├── GenerateApiKey.kt │ │ │ ├── InsertNewUser.kt │ │ │ ├── InsertNewUserApp.kt │ │ │ ├── ValidateUserApp.kt │ │ │ └── ValidateUserEmail.kt │ │ ├── plugins │ │ ├── JWT.kt │ │ ├── Koin.kt │ │ ├── Routing.kt │ │ ├── Security.kt │ │ ├── Serialization.kt │ │ └── StatusExceptions.kt │ │ └── utils │ │ ├── AppErrorCodes.kt │ │ ├── DateTime.kt │ │ ├── Results.kt │ │ └── RoutesList.kt └── resources │ ├── application.conf │ └── logback.xml └── test └── kotlin └── com └── santansarah └── ApplicationTest.kt /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/.gitignore -------------------------------------------------------------------------------- /.idea/codeStyles/Project.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/.idea/codeStyles/Project.xml -------------------------------------------------------------------------------- /.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/.idea/codeStyles/codeStyleConfig.xml -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/.idea/vcs.xml -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/LICENSE.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/README.md -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/gradlew.bat -------------------------------------------------------------------------------- /license.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/license.md -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = "com.santansarah.cityapi" -------------------------------------------------------------------------------- /sorted_data.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/sorted_data.png -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/AppRoutes.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/AppRoutes.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/Application.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/Application.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/CityRoutes.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/CityRoutes.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/UserRoutes.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/UserRoutes.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/data/CityDaoImpl.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/data/CityDaoImpl.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/data/CityDaoInterface.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/data/CityDaoInterface.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/data/CityModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/data/CityModel.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/data/DaoInterface.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/data/DaoInterface.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/data/Database.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/data/Database.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/data/Tables.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/data/Tables.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/data/UserAppDaoImpl.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/data/UserAppDaoImpl.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/data/UserDaoImpl.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/data/UserDaoImpl.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/data/UserModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/data/UserModel.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/domain/CityResponse.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/domain/CityResponse.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/domain/UserResponse.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/domain/UserResponse.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/domain/usecases/EncryptApiKey.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/domain/usecases/EncryptApiKey.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/domain/usecases/GenerateApiKey.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/domain/usecases/GenerateApiKey.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/domain/usecases/InsertNewUser.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/domain/usecases/InsertNewUser.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/domain/usecases/InsertNewUserApp.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/domain/usecases/InsertNewUserApp.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/domain/usecases/ValidateUserApp.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/domain/usecases/ValidateUserApp.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/domain/usecases/ValidateUserEmail.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/domain/usecases/ValidateUserEmail.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/plugins/JWT.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/plugins/JWT.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/plugins/Koin.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/plugins/Koin.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/plugins/Routing.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/plugins/Routing.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/plugins/Security.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/plugins/Security.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/plugins/Serialization.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/plugins/Serialization.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/plugins/StatusExceptions.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/plugins/StatusExceptions.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/utils/AppErrorCodes.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/utils/AppErrorCodes.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/utils/DateTime.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/utils/DateTime.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/utils/Results.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/utils/Results.kt -------------------------------------------------------------------------------- /src/main/kotlin/com/santansarah/utils/RoutesList.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/kotlin/com/santansarah/utils/RoutesList.kt -------------------------------------------------------------------------------- /src/main/resources/application.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/resources/application.conf -------------------------------------------------------------------------------- /src/main/resources/logback.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/main/resources/logback.xml -------------------------------------------------------------------------------- /src/test/kotlin/com/santansarah/ApplicationTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/santansarah/ktor-city-api/HEAD/src/test/kotlin/com/santansarah/ApplicationTest.kt --------------------------------------------------------------------------------