arkenv alternatives and similar libraries
Based on the "Command Line Interface" category.
Alternatively, view arkenv alternatives based on common mentions on social networks and blogs.
-
kotlin-argparser
Easy to use and concise yet powerful and robust command line argument parsing for Kotlin
CodeRabbit: AI Code Reviews for Developers

Do you think we are missing an alternative of arkenv or a related project?
README
Type-safe Kotlin configuration parser by
delegates.
Supports the most common external configuration sources, including:
- Command line
- Environment Variables
- Properties, Yaml & Spring-like profiles
.env
files
๐ฆ Installation
Add jcenter to your repositories and add Arkenv in Gradle:
repositories { jcenter() }
compile "com.apurebase:arkenv:$arkenv_version"
๐จ Usage
Define your arguments by extending Arkenv
and declaring props with the argument
delegate.
class Arguments : Arkenv() {
val country: String by argument()
val bool: Boolean by argument {
description = "A bool, which will be false by default"
}
val port: Int by argument("-p", "--this-can-be-set-via-env") {
description = "An Int with a default value and custom names"
defaultValue = { 5000 }
}
val nullInt: Int? by argument {
description = "A nullable Int, which doesn't have to be declared"
}
val mapped: List<String> by argument {
description = "Complex types can be achieved with a mapping"
mapping = { it.split("|") }
}
}
If you don't specify any names for the argument, it will use the property's name.
In the case of nullInt
, you can parse it like this:
- From command line with
--null-int world
- As an environment variable
NULL_INT=world
By default, Arkenv supports parsing command line arguments, environment variables, and profiles.
To get started, we recommend reading about the basics for a quick tour of what's included.
๐ Documentation
Please visit https://apurebase.gitlab.io/arkenv/ for in-depth documentation.
๐ค Contributing 
Slack
Find the Arkenv channel in the official Kotlin Slack.