74 lines
2.9 KiB
Markdown
74 lines
2.9 KiB
Markdown
<div align="center">
|
|
<img src="icons/cloud.svg" width="300px"/>
|
|
</div>
|
|
|
|
# cloud command framework
|
|
|
|
[](https://www.codefactor.io/repository/github/sauilitired/cloud)
|
|
|
|
This is going to be a general-purpose Java command dispatcher & framework.
|
|
It will allow programmers to define command chains that users can use to execute pre-defined actions.
|
|
|
|
The library was named cloud because using it makes you feel like you're floating around on a cloud in heaven. It's an experience of pure bliss and joy.
|
|
This is unlike the experience of using **a**ny **c**ommand **f**ramework that currently exists for the JVM, which can be compared to drowning in a pool of lava while watching your family get eaten by a pack of wolves.
|
|
|
|
Its feature set is derived from **a**lready existing **c**ommand **f**rameworks, while being less restrictive, opinionated and confusing.
|
|
CLOUD is built to be completely deterministic and your commands will behave exactly as you've programmed them to. No fluff and no mess, just a smooth cloud-like experience.
|
|
|
|
The code is based on a paper that can be found [here](https://github.com/Sauilitired/Sauilitired/blob/master/AS_2020_09_Commands.pdf).
|
|
|
|
## goals
|
|
|
|
- Allow for commands to be defined using builder patterns
|
|
- Allow for commands to be defined using annotated methods
|
|
- Allow for command pre-processing
|
|
- Allow for command suggestion outputs
|
|
|
|
Once the core functionality is present, the framework will offer implementation modules, supporting a wide variety of platforms.
|
|
|
|
### implementations
|
|
|
|
- Minecraft:
|
|
- Generic Brigadier module
|
|
- Bukkit module
|
|
- Paper module, with optional Brigadier support
|
|
- Sponge module
|
|
- Cloudburst
|
|
- Bungee module
|
|
- Velocity module
|
|
|
|
- Create a Discord implementation (JDA)
|
|
- Create a Java CLI implementation (JLine3)
|
|
|
|
## links
|
|
|
|
- Discord: https://discord.gg/KxkjDVg
|
|
|
|
## maven
|
|
|
|
cloud is available from [IntellectualSites](https://intellectualsites.com)' maven repository:
|
|
|
|
```xml
|
|
<repository>
|
|
<id>intellectualsites-snapshots</id>
|
|
<url>https://mvn.intellectualsites.com/content/repositories/snapshots</url>
|
|
</repository>
|
|
```
|
|
|
|
```xml
|
|
<dependency>
|
|
<groupId>com.intellectualsites</groupId>
|
|
<artifactId></artifactId>
|
|
<version></version>
|
|
</dependency>
|
|
```
|
|
|
|
### attributions, links & acknowledgements
|
|
|
|
This library is licensed under the <a href="https://opensource.org/licenses/MIT">MIT</a> license, and the code copyright
|
|
belongs to Alexander Söderberg. The implementation is based on a paper written by the copyright holder, and this paper exists
|
|
under the <a href="https://creativecommons.org/licenses/by/4.0/legalcode">CC Attribution 4</a> license.
|
|
|
|
The <a href="https://iconscout.com/icons/cloud" target="_blank">Cloud</a> icon was created by by
|
|
<a href="https://iconscout.com/contributors/oviyan">Thanga Vignesh P</a> on <a href="https://iconscout.com">Iconscout</a>
|
|
and Digital rights were purchased under a premium plan.
|