Quill
A feature-filled library to streamline Minecraft plugin development.
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