Skip to content

A simple command framework for JVM-based Discord API libraries.

License

Notifications You must be signed in to change notification settings

piozygmunt/meirei

Repository files navigation

Meirei  命令 [めいれい] (noun): command, instruction, order

CircleCI Release Apache License

A simple and extensible command framework for JVM-based Discord API wrappers, supporting both JDA and Discord4J.

Documentation TBD

Features

  • Easy command creation using annotations, constructors, and builders
  • Sub-commands as priority "arguments" of parent commands
  • Permissions for each command based on the Discord permission system
  • Rate-limit each command on a per user or per guild basis with customizable cooldowns
  • Command context for each command execution, including the ability to expose the command registry for reading (you can create your help commands this way!)
  • An open command registry interface so that anyone can implement their own command store (want to use SQL or NoSQL? go right ahead!)
    • Comes with a basic command registry implementation already
  • Use it in Kotlin or Java (or any other JVM language), it's up to you!

Getting It

Current release version: 0.8.5. Requires Java 8 or higher to run. Replace @VERSION@ with the release tag you want.

Gradle

build.gradle

  repositories {
    // ...
    maven { url 'https://jitpack.io' }
  }
  
  dependencies {
    // CHOOSE ONE OF
    compile "com.github.kvnxiao.meirei:meirei-jda:@VERSION@" // For JDA
    compile "com.github.kvnxiao.meirei:meirei-d4j:@VERSION@" // For Discord4J (D4J)
  }

Maven

pom.xml

<repositories>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
</repositories>

<dependency>
    <groupId>com.github.kvnxiao.meirei</groupId>
    <!--CHOOSE ONE OF-->
    <artifactId>meirei-jda</artifactId>
    <artifactId>meirei-d4j</artifactId>
    <version>@VERSION@</version>
</dependency>

Getting Started

See the wiki for examples and more info.

Roadmap

TBD


While this project is in development (i.e. pre- 1.0.0 release), you may expect breaking changes made to the API. Any interest in contributing or helping out is greatly appreciated! You can find me on Discord at alpha;helix#1222 on the Discord API Server if you have any questions, suggestions, or helpful insights.

This project is licensed under the Apache Software License 2.0

About

A simple command framework for JVM-based Discord API libraries.

Resources

License

Stars

Watchers

Forks

Packages