Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rollczi/litecommands
☄️ LiteCommands - Command framework for Velocity, Bukkit, Paper, BungeeCord, Minestom, Sponge, JDA and other implementations.
https://github.com/rollczi/litecommands
bukkit chatgpt hacktoberfest java jda kyori litecommands minecraft minestom papermc spigot sponge velocity velocitypowered
Last synced: about 1 month ago
JSON representation
☄️ LiteCommands - Command framework for Velocity, Bukkit, Paper, BungeeCord, Minestom, Sponge, JDA and other implementations.
- Host: GitHub
- URL: https://github.com/rollczi/litecommands
- Owner: Rollczi
- License: apache-2.0
- Created: 2021-11-12T03:32:56.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2024-09-27T17:36:29.000Z (about 2 months ago)
- Last Synced: 2024-09-28T12:02:01.548Z (about 2 months ago)
- Topics: bukkit, chatgpt, hacktoberfest, java, jda, kyori, litecommands, minecraft, minestom, papermc, spigot, sponge, velocity, velocitypowered
- Language: Java
- Homepage: https://litedevelopers.rollczi.dev/
- Size: 1.72 MB
- Stars: 129
- Watchers: 2
- Forks: 18
- Open Issues: 26
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
LiteCommands & Hacktoberfest 2024
Register on hacktoberfest.com and start supporting open source!Add/Improve/Fix features and open Pull request! If you don't have an idea, see issues!
[![Discord](https://raw.githubusercontent.com/intergrav/devins-badges/v3/assets/cozy/social/discord-plural_vector.svg)](https://discord.gg/6cUhkj6uZJ)
[![Sponsor](https://raw.githubusercontent.com/intergrav/devins-badges/v3/assets/cozy/donate/ghsponsors-singular_vector.svg)](https://github.com/sponsors/Rollczi)
[![Gradle](https://raw.githubusercontent.com/intergrav/devins-badges/v3/assets/cozy/built-with/gradle_vector.svg)](https://gradle.org/)
[![Java](https://raw.githubusercontent.com/intergrav/devins-badges/v3/assets/cozy/built-with/java8_vector.svg)](https://www.java.com/)### LiteCommands
Annotation based command framework for Velocity, Bukkit, Paper, BungeeCord, Minestom, Sponge, Fabric, JDA and future implementations.### 📌 Helpful links
- [Support Discord](https://discord.gg/6cUhkj6uZJ)
- [Bugs & issues report](https://github.com/Rollczi/LiteCommands/issues)
- [Documentation](https://docs.rollczi.dev/)### ✨ Features
- Simple Arguments [@Arg](https://litedevelopers.github.io/LiteDevelopers-documentation/arg.html) & Optional arguments [@OptionalArg](https://litedevelopers.github.io/LiteDevelopers-documentation/optionalarg-null-way.html)
- Flags - [@Flag](https://litedevelopers.github.io/LiteDevelopers-documentation/flag.html)
- Joiner - _[@Join](https://litedevelopers.github.io/LiteDevelopers-documentation/join-argument.html) remaining arguments into a string_
- Asynchronous commands, argument parsing and completion. [@Async](https://github.com/Rollczi/minecraft-lista-plugin/blob/master/src/main/java/dev/rollczi/minecraftlista/MinecraftListaCommand.java#L19C10-L19C10)
- Command shortcuts [@Shortcut](https://github.com/Rollczi/LiteCommands/blob/master/litecommands-annotations/test/dev/rollczi/litecommands/annotations/shortcut/ShortcutMultilevelTest.java#L21C13-L21C13)
- Support for basic types: `int`, `double`, `Duration`, `LocalDateTime`, `Location` and [more](https://litedevelopers.github.io/LiteDevelopers-documentation/supported-types.html)!
- Support for collection types: `List`, `Set`, `TreeSet`, `Queue`, java array `T[]` and many others!
- [IntelliJ Plugin](https://github.com/LiteDevelopers/LiteCommands-IntelliJPlugin) that provides annotation inspections, syntax highlighting and [more](https://github.com/LiteDevelopers/LiteCommands-IntelliJPlugin)!
- Custom annotation validators. [(example)](https://github.com/Rollczi/LiteCommands/blob/master/examples/bukkit/src/main/java/dev/rollczi/example/bukkit/ExamplePlugin.java#L58C21-L58C21)
- Programmatic API for creating more dynamic commands. [(example)](https://github.com/Rollczi/LiteCommands/blob/master/examples/bukkit/src/main/java/dev/rollczi/example/bukkit/ExamplePlugin.java#L64C26-L64C26)
- Jakarta EE annotation validation. [(extension)](https://litedevelopers.github.io/LiteDevelopers-documentation/jakarta-extension.html)
- ChatGPT suggestions. [(extension)](https://litedevelopers.github.io/LiteDevelopers-documentation/chatgpt-extension.html)
- Adventure Kyori support. [(extension)](https://litedevelopers.github.io/LiteDevelopers-documentation/adventure-kyori.html)
- and [more](https://litedevelopers.github.io/LiteDevelopers-documentation/introdution.html)! ✨## 📦 Platforms
- Velocity
- Bukkit, Spigot, Paper
- BungeeCord, Waterfall
- Minestom _(by [Codestech1](https://github.com/Codestech1))_
- Sponge _(by [BlackBaroness](https://github.com/BlackBaroness))_
- Fabric _(by [huanmeng_qwq](https://github.com/huanmeng-qwq))_
- JDA## 💡 Command Example
This is an example of `/hello ` command:```java
@Command(name = "hello")
@Permission("dev.rollczi.helloworld")
public class HelloCommand {@Execute
void command(@Context CommandSender sender, @Arg String name, @Arg int amount) {
for (int i = 0; i < amount; i++) {
sender.sendMessage("Hello " + name);
}
}
}
```
Then we need to register the command in plugin main class: (in this case for Bukkit)
```java
this.liteCommands = LiteBukkitFactory.builder("example-plugin")
.commands(new HelloCommand())
.build();
```## 🚀 Get Started
#### ➕ Add Panda Repository ❤️
```kts
maven("https://repo.panda-lang.org/releases")
```
```xmlpanda-repository
https://repo.panda-lang.org/releases```
#### ➕ Add LiteCommands to dependencies
```kts
implementation("dev.rollczi:{artifact}:3.6.1")
```
```xmldev.rollczi
{artifact}
3.6.1```
> ⚠️ Replace `{artifact}` with [platform artifact](https://litedevelopers.github.io/LiteDevelopers-documentation/platforms.html)
> Add `-parameters` flag to your compiler to use all features [(read more)](https://litedevelopers.github.io/LiteDevelopers-documentation/parameters-compile-flag.html)💖 GitHub Sponsors
```diff
@@ Special thanks to all sponsors for supporting me and my projects! ❤️ @@
```## 🔮 Official IntelliJ Plugin
With LiteCommands plugin, you can easily develop your commands within the **IntelliJ IDEA** environment.
The plugin provides **annotation inspections**, **tools** for creating new command classes, **syntax highlighting**, **code completion**,
and other useful features to make your development experience smoother and more efficient. How to [install](https://github.com/LiteDevelopers/LiteCommands-IntelliJPlugin?tab=readme-ov-file#installation)?
![litecommandsbanner-intellij](https://github.com/Rollczi/LiteCommands/assets/49173834/fea96613-af58-42bb-b32d-ffd6946ba4cc)## 🌍 More Examples
#### ➕ Official examples
- [Bukkit Example](https://github.com/Rollczi/LiteCommands/tree/master/examples/bukkit)
- [Velocity Example](https://github.com/Rollczi/LiteCommands/tree/master/examples/velocity)
- [ChatGPT Example](https://github.com/Rollczi/LiteCommands/tree/master/examples/bukkit-chatgpt)
- [Bukkit (with Adventure Platform)](https://github.com/Rollczi/LiteCommands/tree/master/examples/bukkit-adventure-platform)#### ➕ Plugins that use LiteCommands!
- [EternalCore](https://github.com/EternalCodeTeam/EternalCore)
- [EternalCombat](https://github.com/EternalCodeTeam/EternalCombat)
- [ChatFormatter](https://github.com/EternalCodeTeam/ChatFormatter)
💖 Thanks for our partners!
JetBrains
Supports us with a free license for the most intelligent Java IDE - IntelliJ IDEA Ultimate
Reposilite
Provides us with a Maven repository for our artifacts - Reposilite Repository
YourKit
Supports us with a innovative and intelligent tools for monitoring and profiling - YourKit Java Profiler