Quill
A feature-filled library to streamline Minecraft plugin development.
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
Quill
Quill
Quill is a comprehensive utility library for Paper plugins, providing a wide range of tools and systems to simplify plugin development. It offers everything from configuration management to advanced item creation, all with a clean and intuitive API.
Features
- 🔧 Plugin Hooks - Annotation-based configuration with automatic updating - 💬 Plugin Hooks - Advanced message handling with MiniMessage support - 💾 Plugin Hooks - Flexible and type-safe data storage system - 📦 Plugin Hooks - Powerful item creation and manipulation - 📋 Plugin Hooks - Simple yet flexible scoreboard creation - 🎮 Plugin Hooks - Streamlined event handling with filtering - 🛠️ Plugin Hooks - Comprehensive collection of utility methods - 🔌 Plugin Hooks - Built-in integration with PlaceholderAPI and Vault
Installation
1. Server Installation
First, download and install the Quill plugin on your server: 1. Download the latest version from Releases 2. Place the JAR file in your server's `plugins` folder 3. Restart your server
2. Development Integration
Gradle (Kotlin DSL)
```kotlin repositories { maven("https://jitpack.io") }
dependencies { compileOnly("com.github.xLevitate:Quill:2.6.0") } ```
Gradle (Groovy)
```groovy repositories { maven { url 'https://jitpack.io' } }
dependencies { compileOnly 'com.github.xLevitate:Quill:2.6.0' } ```
Maven
```xml <repositories> <repository> <id>jitpack.io</id> <url>https://jitpack.io</url> </repository> </repositories>
<dependencies> <dependency> <groupId>com.github.xLevitate</groupId> <artifactId>Quill</artifactId> <version>2.6.0</version> <scope>provided</scope> </dependency> </dependencies> ```
Quick Start
Chat System
```java // Send formatted message Chat.sendMessage(player, "<gradient:green:blue>Welcome to the server!</gradient>");
// Send title Chat.sendTitle(player, "<gold>Welcome!", "<gray>Enjoy your stay"); ```
Configuration
```java @Configuration("config.yml") public class MyConfig { @Comment("Enable or disable the plugin") private boolean enabled = true;
@Comment("Custom message") private String message = "<green>Hello!</green>"; } ```
Item Creation
```java ItemStack item = new ItemWrapper() .plugin(plugin) .material(Material.DIAMOND_SWORD) .name("<gradient:blue:purple>Mystic Blade</gradient>") .lore(Arrays.asList( "<gray>A legendary weapon", "<blue>Damage: +50</blue>" )) .build(); ```
Event Handling
```java Events.listen(plugin, PlayerJoinEvent.class) .filter(event -> !event.getPlayer().hasPlayedBefore()) .handle(event -> { Player player = event.getPlayer(); Chat.sendMessage(player, "<green>Welcome to the server!"); }); ```
Documentation
For detailed documentation, please visit our Wiki.
Requirements
- Java 17 or higher - Paper 1.20.4 or higher - (Optional) PlaceholderAPI for placeholder support - (Optional) Vault for economy support
Support
If you encounter any issues or have questions: 1. Check the Wiki 2. Open an Issue