https://github.com/carmjos/easyoptions
:black_nib: Easy (to define) Options! A lightweight, easy-to-use option definition library in Java, useful for runtime library developers.
https://github.com/carmjos/easyoptions
easy-to-use fastdev java library options
Last synced: 8 months ago
JSON representation
:black_nib: Easy (to define) Options! A lightweight, easy-to-use option definition library in Java, useful for runtime library developers.
- Host: GitHub
- URL: https://github.com/carmjos/easyoptions
- Owner: CarmJos
- License: mit
- Created: 2024-01-16T12:51:38.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2025-08-21T15:42:59.000Z (10 months ago)
- Last Synced: 2025-08-30T16:39:35.261Z (9 months ago)
- Topics: easy-to-use, fastdev, java, library, options
- Language: Java
- Homepage: https://carmjos.github.io/EasyOptions/
- Size: 325 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
```text
___ ___ _ _
| __|__ _ ____ _ / _ \ _ __| |_(_)___ _ _ ___
| _|/ _` (_-< || | (_) | '_ \ _| / _ \ ' \(_-<
|___\__,_/__/\_, |\___/| .__/\__|_\___/_||_/__/
|__/ |_|
```
README LANGUAGES [ [**English**](README.md) | [中文](README_CN.md) ]
# EasyOptions
[](https://github.com/CarmJos/EasyOptions/releases)
[](https://www.gnu.org/licenses/lgpl-3.0.html)
[](https://github.com/CarmJos/EasyOptions/actions/workflows/maven.yml)
[](https://www.codefactor.io/repository/github/carmjos/EasyOptions)


**Easy _(to define)_ Options!**
A lightweight, easy-to-use option definition library in Java, useful for runtime library developers.
## Development
For the latest JavaDoc release, [CLICK HERE](https://CarmJos.github.io/EasyConfiguration).
### Code Samples
```java
public interface DemoOptions {
/**
* Option descriptions
*/
OptionType SEPARATOR = OptionType.of(":-:");
}
```
```java
public class Sample {
public static void main(String[] args) {
OptionHolder holder = new OptionHolder(); // Create holder
holder.set(DemoOptions.SEPARATOR, ":-)"); // Set value
String separator = holder.get(DemoOptions.SEPARATOR); // Get value
// Set value to default
String previous = holder.set(DemoOptions.SEPARATOR, null);
}
}
```
### Dependencies
#### Maven Dependency
Remote Repository Configuration
```xml
maven
Maven Central
https://repo1.maven.org/maven2
github
GitHub Packages
https://maven.pkg.github.com/CarmJos/EasyOptions
```
Generic Native Dependency
```xml
cc.carm.lib
easyoptions
[LATEST RELEASE]
compile
```
#### Gradle Dependency
Remote Repository Configuration
```groovy
repositories {
// Using Maven Central Repository for secure and stable updates, though synchronization might be needed.
mavenCentral()
// Using GitHub dependencies for real-time updates, configure required (recommended).
maven { url 'https://maven.pkg.github.com/CarmJos/EasyOptions' }
}
```
Generic Native Dependency
```groovy
dependencies {
api "cc.carm.lib:easyoptions:[LATEST RELEASE]"
}
```
## Support and Donation
If you appreciate this plugin, consider supporting me with a donation!
Thank you for supporting open-source projects!
Many thanks to Jetbrains for kindly providing a license for us to work on this and other open-source projects.
[](https://www.jetbrains.com/?from=https://github.com/ArtformGames/EasyOptions)
## Open Source License
This project's source code is licensed under [The MIT License](https://opensource.org/licenses/MIT).