1.0.0
Compatibility
Changes
ItemMailBox
A lightweight Paper 1.21.x plugin that lets players share items through an intuitive mailbox GUI - no chests, no clutter.
Features:
- /itembox — Open your personal inbox. Items sent by others appear here. Click to claim.
- /itembox send <player> — Open a send GUI. Drop in items and hit send — they arrive in the recipient's mailbox, even if they're offline.
- Favorites - Add friends to your favorites list: /itembox fav add <player>. Open the favorites GUI (/itembox fav) and click a head to send items instantly — no more typing names.
- Public mailboxes — Toggle your mailbox to public with a button in the GUI. Others can view it with /itembox view <player>.
- Key requirement (optional) — Require a key item (configurable material) to send items. Great for server economies or gated features.
- Cooldown (optional) — Set a send cooldown in seconds to prevent spam.
- Fully configurable — All messages, titles, colors, and behavior are customizable in config.yml.
- Permissions — Granular permission nodes for every feature (itembox.use, itembox.send, itembox.reload, etc.). Offline support — Send items and add favorites even when the target player is offline (uses the server's usercache).
- GUI pagination — Browse mailboxes and favorites with next/previous page buttons.
- YAML storage — Lightweight per-player data files in the mailboxes/ folder.
Commands


Configuration
config.yml is generated on first run. Key options:
require-key: false
key-item: TRIPWIRE_HOOK
allow-public: true
send-cooldown: 0
All GUI titles and messages support & color codes.
Requirements
- Paper 1.21.x (or compatible fork)
- Java 21+
Installation
- Drop the JAR into your plugins/ folder.
- Restart the server.
- Configure config.yml to your liking.
- Done. No dependencies.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:meskAZFd:HNCB8s9k"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:meskAZFd:HNCB8s9k"
}

