- Notifications
You must be signed in to change notification settings - Fork27
☄️ LiteCommands - Command framework for Velocity, Bukkit, Paper, BungeeCord, Minestom, Sponge, Fabric, JDA and future implementations.
License
Rollczi/LiteCommands
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
important changes affecting code security -#512
Starting with version3.10.0
(release:February 1, 2025), the way permissions are handled is changing:
- Old format (AND behavior):
@Permission("admin")@Permission("time.set")
- New required format (to keep AND behavior):
@Permission("admin","time.set")
If you don’t update,permissions will default to OR behavior in the new versions.
Update your annotationsNOW to avoid issues when the new version is released!

Annotation based command framework for Velocity, Bukkit, Paper, BungeeCord, Minestom, Sponge, Fabric, JDA and future implementations.
- Simple Arguments@Arg & Optional arguments@OptionalArg
- Flags -@Flag
- Joiner -@Join remaining arguments into a string
- Literal arguments - @Literal
- @Quoted arguments for
"quoted input!"
- Asynchronous commands, argument parsing and completion.@Async
- Context providers - e.g.
@Sender Player
,@Context World
andmore - Command shortcuts@Shortcut
- Support for basic types:
int
,double
,Duration
,LocalDateTime
,Location
andmore! - Support for collection types:
List
,Set
,TreeSet
,Queue
, java arrayT[]
and many others! - IntelliJ Plugin that provides annotation inspections, syntax highlighting andmore!
- Custom annotation validators.(example)
- Programmatic API for creating more dynamic commands.(example)
- Jakarta EE annotation validation.(extension)
- ChatGPT suggestions.(extension)
- Adventure Kyori support.(extension)
- andmore! ✨
- Velocity
- Bukkit, Spigot, Paper
- BungeeCord, Waterfall(byrchomczyk)
- Minestom(byCodestech1)
- Sponge(byBlackBaroness)
- Fabric(byhuanmeng_qwq)
- JDA
This is an example of/hello <name> <amount>
command:
@Command(name ="hello")@Permission("dev.rollczi.helloworld")publicclassHelloCommand {@Executevoidcommand(@SenderCommandSendersender,@ArgStringname,@Argintamount) {for (inti =0;i <amount;i++) {sender.sendMessage("Hello " +name); } }}
Then we need to register the command in plugin main class: (in this case for Bukkit)
this.liteCommands =LiteBukkitFactory.builder("example-plugin") .commands(newHelloCommand()) .build();
maven("https://repo.panda-lang.org/releases")
<repository> <id>panda-repository</id> <url>https://repo.panda-lang.org/releases</url></repository>
implementation("dev.rollczi:{artifact}:3.9.7")
<dependency> <groupId>dev.rollczi</groupId> <artifactId>{artifact}</artifactId> <version>3.9.7</version></dependency>
⚠️ Replace{artifact}
withplatform artifact
Add-parameters
flag to your compiler to use all features(read more)
@@ Special thanks to all sponsors for supporting me and my projects! ❤️ @@
With LiteCommands plugin, you can easily develop your commands within theIntelliJ IDEA environment.The plugin providesannotation 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 toinstall?

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
About
☄️ LiteCommands - Command framework for Velocity, Bukkit, Paper, BungeeCord, Minestom, Sponge, Fabric, JDA and future implementations.