DearU

โญ โ€” (0 endorsements) ๐Ÿ“ฅ 57 downloads ๐Ÿ“Œ v1.0.0 ๐Ÿ“… 3/12/2026
๐ŸŸก Updated this year

By bindglam ยท folia

โฌ‡ Download Mod Source: Modrinth โ†— ๐Ÿ“… Updated: 3/8/2026 ๐Ÿ“… Created: 3/12/2026

๐Ÿ” Analysis

  • ๐Ÿ† #55 of 137 folia mods in this game by downloads

๐Ÿ“‹ About This Mod

<div align="center"> # ๐Ÿ“ฌ DearU ### A modern mailbox plugin for Paper/Folia servers (https://img.shields.io/badge/Kotlin-2.3.10-blue?style=flat-square&logo=kotlin)](https://kotlinlang.org/) (https://img.shields.io/badge/Java-21-orange?style=flat-square&logo=openjdk)](https://openjdk.org/) (https://img.shields.io/badge/Paper-API-green?style=flat-square&logo=papermc)](https://papermc.io/) (https://img.shields.io/badge/License-MIT-yellow?style=flat-square)](LICENSE) </div> ## โœจ Features - ๐Ÿ“ฎ **Mailbox System** - Players can receive and manage their mail through a beautiful GUI - ๐Ÿ“ฆ **Package Support** - Send single items or multi-item packages to players - ๐Ÿ’พ **Database Abstraction** - Built-in support for SQLite and MySQL - โšก **Async Operations** - Non-blocking mail operations using `CompletableFuture` - ๐ŸŽจ **Modern API** - Clean Java interface for plugin developers - ๐Ÿ› ๏ธ **Command Aliases** - Customizable command aliases ## ๐Ÿ“ Project Structure ``` DearU/ โ”œโ”€โ”€ api/ # Java module with public interfaces โ”‚ โ””โ”€โ”€ DearU # Main plugin interface โ”‚ โ”œโ”€โ”€ Mailbox # Async mailbox operations โ”‚ โ”œโ”€โ”€ Mail # Sealed interface for mail types โ”‚ โ”‚ โ”œโ”€โ”€ SingleMail # Single item mail โ”‚ โ”‚ โ””โ”€โ”€ PackageMail # Multi-item package โ”‚ โ”œโ”€โ”€ MailSender # Mail sender representation โ”‚ โ””โ”€โ”€ MailboxManager # Mailbox instance manager โ”‚ โ””โ”€โ”€ core/ # Kotlin module with implementations โ””โ”€โ”€ DearUPlugin # Main plugin class โ”œโ”€โ”€ DearUConfiguration # Config system โ”œโ”€โ”€ DatabaseManager # Database abstraction โ”œโ”€โ”€ MailboxManagerImpl # Mailbox implementation โ””โ”€โ”€ MailboxGui # GUI implementation ``` ## ๐Ÿš€ Getting Started ### Requirements - **Java 21** or higher - **Paper/Folia** server (latest version) ### Installation 1. Build the plugin: ```bash ./gradlew build ``` 2. Find the JAR in `core/build/libs/` 3. Place it in your server's `plugins/` folder 4. Restart your server ### Configuration Edit `plugins/DearU/config.yml` to customize: ```yaml # Database settings (SQLite/MySQL) database: sql: type: SQLITE # or MYSQL mysql: host: localhost port: 3306 database: dearu username: root password: password # Command aliases commands: mailbox: aliases: - mail - ์šฐํŽธํ•จ ``` ## ๐Ÿ’ป Development ### Build Commands ```bash # Build the project ./gradlew build # Run test server (Paper) ./gradlew runServer # Run Folia test server ./gradlew runFolia # Clean build artifacts ./gradlew clean ``` ### API Usage #### Sending Mail ```java import com.bindglam.dearu.DearU; import com.bindglam.dearu.mail.*; // Get plugin instance DearU dearU = DearUProvider.get(); // Send single item mail Mail singleMail = Mail.single( MailSender.server(), itemStack, "Welcome to our server!" ); dearu.mailboxManager().getMailbox(playerUUID) .putMail(singleMail); // Send package mail PackageMail.Body body = PackageMail.bodyBuilder() .name("Welcome Package") .content(itemStack1) .content(itemStack2) .build(); Mail packageMail = Mail.packaged( MailSender.player(senderUUID), body, "Here's your starter kit!" ); dearu.mailboxManager().getMailbox(playerUUID) .putMail(packageMail); ``` #### Reading Mail ```java import com.bindglam.dearu.Mailbox; import java.util.concurrent.CompletableFuture; Mailbox mailbox = dearU.mailboxManager().getMailbox(playerUUID); // Get all mail (async) CompletableFuture<List<Mailbox.IdentifiedMail>> future = mailbox.mails(); future.thenAccept(mails -> { for (Mailbox.IdentifiedMail identified : mails) { Mail mail = identified.mail(); // Process mail... } }); // Get specific mail by ID CompletableFuture<Mailbox.IdentifiedMail> mailFuture = mailbox.mail(mailId); mailFuture.thenAccept(identified -> { if (identified != null) { Mail mail = identified.mail(); // Process mail... } }); ``` ## ๐Ÿ—๏ธ Architecture ### Managerial Pattern All managers implement the `Managerial` interface: ```kotlin interface Managerial { fun start(context: Context) fun end(context: Context) } ``` Managers are initialized in plugin lifecycle: ```kotlin val managers = listOf(DatabaseManager, MailboxManagerImpl) managers.forEach { it.start(Context(this, dearUConfig)) } ``` ### Database Abstraction Uses `DatabaseLib` for unified SQL operations: - **SQLite** - Default, uses `database.db` in plugin data folder - **MySQL** - Configurable for production use ### Configuration System Nested class-based configuration using `ConfigLib`: ```kotlin class Commands { val mailbox = createExtendedComplexField { CommandField("mailbox") } } ``` ## ๐Ÿ”ง Dependencies ### Runtime Dependencies - **ConfigLib** (1.0.0) - Configuration system - **DatabaseLib** (1.0.4) - Database abstraction - **semver4j** (6.0.0) - Version comparison ### Build Dependenc

### A modern mailbox plugin for Paper/Folia servers

[!(https://img.shields.io/badge/Kotlin-2. 3. 10-blue?style=flat-square&logo=kotlin)](https://kotlinlang.org/) [!(https://img.shields.io/badge/Java-21-orange?style=flat-square&logo=openjdk)](https://openjdk.org/) [!(https://img.shields.io/badge/Paper-API-green?style=flat-square&logo=papermc)](https://papermc.io/) [!(https://img.shields.io/badge/License-MIT-yellow?style=flat-square)](LICENSE)

## โœจ Features

  • ๐Ÿ“ฎ Mailbox System - Players can receive and manage their mail through a beautiful GUI
  • ๐Ÿ“ฆ Package Support - Send single items or multi-item packages to players
  • ๐Ÿ’พ Database Abstraction - Built-in support for SQLite and MySQL
  • โšก Async Operations - Non-blocking mail operations using `CompletableFuture`
  • ๐ŸŽจ Modern API - Clean Java interface for plugin developers
  • ๐Ÿ› ๏ธ Command Aliases - Customizable command aliases

## ๐Ÿ“ Project Structure

``` DearU/ โ”œโ”€โ”€ api/ # Java module with public interfaces โ”‚ โ””โ”€โ”€ DearU # Main plugin interface โ”‚ โ”œโ”€โ”€ Mailbox # Async mailbox operations โ”‚ โ”œโ”€โ”€ Mail # Sealed interface for mail types โ”‚ โ”‚ โ”œโ”€โ”€ SingleMail # Single item mail โ”‚ โ”‚ โ””โ”€โ”€ PackageMail # Multi-item package โ”‚ โ”œโ”€โ”€ MailSender # Mail sender representation โ”‚ โ””โ”€โ”€ MailboxManager # Mailbox instance manager โ”‚ โ””โ”€โ”€ core/ # Kotlin module with implementations โ””โ”€โ”€ DearUPlugin # Main plugin class โ”œโ”€โ”€ DearUConfiguration # Config system โ”œโ”€โ”€ DatabaseManager # Database abstraction โ”œโ”€โ”€ MailboxManagerImpl # Mailbox implementation โ””โ”€โ”€ MailboxGui # GUI implementation ```

## ๐Ÿš€ Getting Started

### Requirements

  • Java 21 or higher
  • Paper/Folia server (latest version)

### Installation

1. Build the plugin: ```bash ./gradlew build ```

2. Find the JAR in `core/build/libs/`

3. Place it in your server's `plugins/` folder

4. Restart your server

### Configuration

Edit `plugins/DearU/config.yml` to customize:

```yaml # Database settings (SQLite/MySQL) database: sql: type: SQLITE # or MYSQL mysql: host: localhost port: 3306 database: dearu username: root password: password

# Command aliases commands: mailbox: aliases: - mail - ์šฐํŽธํ•จ ```

## ๐Ÿ’ป Development

### Build Commands

```bash # Build the project ./gradlew build

# Run test server (Paper) ./gradlew runServer

# Run Folia test server ./gradlew runFolia

# Clean build artifacts ./gradlew clean ```

### API Usage

#### Sending Mail

```java import com.bindglam.dearu. DearU; import com.bindglam.dearu.mail.*;

// Get plugin instance DearU dearU = DearUProvider.get();

// Send single item mail Mail singleMail = Mail.single( MailSender.server(), itemStack, "Welcome to our server!" ); dearu.mailboxManager().getMailbox(playerUUID) .putMail(singleMail);

// Send package mail PackageMail. Body body = PackageMail.bodyBuilder() .name("Welcome Package") .content(itemStack1) .content(itemStack2) .build();

Mail packageMail = Mail.packaged( MailSender.player(senderUUID), body, "Here's your starter kit!" ); dearu.mailboxManager().getMailbox(playerUUID) .putMail(packageMail); ```

#### Reading Mail

```java import com.bindglam.dearu. Mailbox; import java.util.concurrent. CompletableFuture;

Mailbox mailbox = dearU.mailboxManager().getMailbox(playerUUID);

// Get all mail (async) CompletableFuture> future = mailbox.mails(); future.thenAccept(mails -> { for (Mailbox. IdentifiedMail identified : mails) { Mail mail = identified.mail(); // Process mail... } });

// Get specific mail by ID CompletableFuture mailFuture = mailbox.mail(mailId); mailFuture.thenAccept(identified -> { if (identified != null) { Mail mail = identified.mail(); // Process mail... } }); ```

## ๐Ÿ—๏ธ Architecture

### Managerial Pattern

All managers implement the `Managerial` interface:

```kotlin interface Managerial { fun start(context: Context) fun end(context: Context) } ```

Managers are initialized in plugin lifecycle: ```kotlin val managers = listOf(DatabaseManager, MailboxManagerImpl) managers.forEach { it.start(Context(this, dearUConfig)) } ```

### Database Abstraction

Uses `DatabaseLib` for unified SQL operations:

  • SQLite - Default, uses `database.db` in plugin data folder
  • MySQL - Configurable for production use

### Configuration System

Nested class-based configuration using `ConfigLib`: ```kotlin class Commands { val mailbox = createExtendedComplexField { CommandField("mailbox") } } ```

## ๐Ÿ”ง Dependencies

### Runtime Dependencies - ConfigLib (1. 0. 0) - Configuration system - DatabaseLib (1. 0. 4) - Database abstraction - semver4j (6. 0. 0) - Version comparison

### Build Dependenc

๐Ÿค– AI-enhanced โ€” based on mod data

๐Ÿ“Š Mod Details

Game
Minecraft Plugins
Author
bindglam
Version
1.0.0
Downloads
57
Endorsements
0
Category
folia
Created
3/12/2026
Updated
3/8/2026
Game Versions
1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4
Tags
game-mechanics, management, storage

๐Ÿ”ง How to Install Minecraft Plugins Mods

Download from Modrinth. Use Prism Launcher or drop into your mods folder.

๐Ÿ“– Full step-by-step install guide for Minecraft Plugins โ†’

Visit the official mod page for specific installation instructions for this mod.

๐ŸŽฎ Need cheat codes or console commands? Check ur gaming wiki for Minecraft Plugins commands, item IDs, and more.

โ“ Frequently Asked Questions

Which Minecraft Plugins versions does DearU support?

The author lists 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5. Other versions may work but are untested by the author.

What is the latest version of DearU?

Version 1.0.0, published 2026-03-08 with 57 downloads recorded at the source.

Keep browsing โ€” more Minecraft Plugins mods await

๐Ÿ“‹ All Minecraft Plugins Mods ๐Ÿ† Top 25 ๐Ÿ“‚ More folia ๐Ÿ‘ค More by bindglam ๐Ÿ”Ž Similar Mods ๐ŸŒ Best folia (All Games) ๐Ÿ”€ Check Compatibility โš–๏ธ Compare Mods ๐Ÿ†• New Mods