
CardBoard SharkMI Fork
Run Bukkit/Spigot/Paper plugins on Fabric servers - SharkMI fork with enhanced mixin compatibility
About this Mod
This is a community fork maintained by SharkMI, based on CardboardPowered/cardboard.
It includes additional compatibility fixes that have not yet been merged upstream.
🐛 Issues & Feedback
- Fork-specific bugs or suggestions → Please open an Issue in this repository.
- General discussion or questions → Feel free to join the Cardboard Discord (the upstream community).
Fork Differences
This is a fork of the official Cardboard project with the following changes:
- Enhanced mixin compatibility: Replaced
@Overwriteannotations with precise injection methods (@Inject,@ModifyArg,@Redirect) to avoid conflicts with other Fabric mods - MiniMOTD compatibility: Fixed server status ping conflicts with MiniMOTD mod
- carpet-tis-addition compatibility: Fixed boat item placement conflicts
- Fabric API NPE fix: Resolved crash caused by Fabric API field injection timing
- OWASP security scanning: Integrated OWASP Dependency-Check into the build pipeline
- Mixin conflict detection tool: Built-in runtime scanner that detects mixin conflicts across all loaded mods at startup (6 detection rules, FATAL/HIGH/MEDIUM/LOW severity levels, console + JSON report output, optional auto-disable for fatal conflicts)
Overview
Cardboard is an implementation of the Bukkit/Spigot/Paper API for FabricMC. It allows you to run plugins from the Bukkit ecosystem on a Fabric modded server, giving you the best of both worlds: mods and plugins.
Features
- Support for Bukkit/Spigot/Paper plugins
- Full Bukkit API implementation (work in progress)
- NMS (
net.minecraft.server) support with automatic remapping - Compatible with Fabric API
- Mojang official mappings
Installation
Prerequisites
| Software | Version |
|---|---|
| Java | 21+ |
| Fabric Loader | 0.16+ |
| Minecraft | 1.21.1+ |
Steps
Install Fabric Server
- Download the Fabric Installer
- Or use the Fabric Server Installer
Download Cardboard
- Get the latest jar from the official website or GitHub Releases
Place in mods folder
server/ ├── mods/ │ ├── cardboard-xxx.jar <-- put here │ └── fabric-api-xxx.jar <-- Fabric API (required) ├── eula.txt └── server.propertiesStart the server
- The config file will be generated automatically on first launch
- Place plugins in the
plugins/folder
Usage
Loading Plugins
Simply drop .jar plugin files into the plugins/ directory and restart the server.
Configuration
Configuration file is located at config/cardboard/cardboard-config.yml:
# Enable automatic conflict resolution
auto-conflict-resolution: true
# Force-disabled mixins (for resolving conflicts)
mixin-force-disable: []
# Mixin conflict detection
runtime-conflict-scan: true
conflict-scan-json-output: false
auto-disable-fatal-conflicts: false
# Debug options
debug-print-event-call: false
debug-print-all-calls: false
For detailed conflict detection configuration, see docs/mixin-conflict-detection/user-guide.md.
Building
Requirements
- Java 21+
- Gradle (wrapper included, no extra installation needed)
Build Commands
# Windows
.\gradlew.bat build
# Linux/Mac
./gradlew build
# Skip tests (faster)
.\gradlew.bat build -x test
Build artifacts are located in build/libs/.
Version Support
| Minecraft Version | Fabric Version | Branch | Status |
|---|---|---|---|
| 1.21.11 | 0.16+ | ver/1.21.11 | Active |
| <= 1.21.8 | - | - | No Longer Supported |
This fork focuses exclusively on the latest Minecraft version. Older versions are not maintained. See Supported Versions for upstream details.
Plugin Compatibility
Tested Working
| Plugin | Status | Notes |
|---|---|---|
| EssentialsX | Partial | Core features work |
| WorldEdit | Partial | Basic operations work |
| Vault | Experimental | Economy system integration |
| LuckPerms | Experimental | Permission system |
Known Incompatibilities
| Plugin/Mod | Reason | Workaround |
|---|---|---|
| Some mods using Mixin | Injection point conflicts | Disable conflicting mixins in config |
Known Issues
- Mixin Conflicts: Some Fabric mods using
@Overwritemay conflict with Cardboard- Solution: Configure
mixin-force-disableincardboard-config.yml
- Solution: Configure
- NMS Plugins: Some plugins deeply dependent on NMS may not work
- Cardboard supports automatic NMS remapping, but coverage is not 100%
- Missing Events: A few Bukkit events are not yet implemented
Contributing
We welcome contributions of all kinds.
Reporting Bugs
- Search Issues for existing reports of the same problem
- If not found, create a new issue with:
- Server log (
latest.log) - Cardboard version
- Steps to reproduce
- Server log (
Submitting Code
- Fork this repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'feat: add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Create a Pull Request
Development Guidelines
- Follow Conventional Commits specification
- Use English for code comments
- Use
@Injectinstead of@Overwritefor new mixins
Documentation
Note: Comprehensive documentation for this fork is still being written. For now, refer to the upstream resources below.
Credits
- BukkitTeam, Spigot, and Paper for their work on the API
- Glowstone for the library loader
- md_5's SpecialSource, SrgLib by Techcable & Orion, MinecraftMapping by Phase
- All Cardboard contributors
- All SharkMI fork contributors
- Trae SOLO and OpenCode for AI-assisted development
License
This project inherits the license from Paper. See Paper's License for full details.
SrgLib is licensed under MIT.
This project is licensed under the GPL-3.0 License. See LICENSE for details.
Available Versions
How to Install CardBoard SharkMI Fork on Your Server
Order Server
Order a Minecraft Java server with at least 3 GB RAM (4 GB recommended).
Set fabric Loader
In the panel under "Egg", select the fabric loader and matching Minecraft version (1.21.11).
Install Mod
Open the mod browser in the dashboard and search for "CardBoard SharkMI Fork". Click "Install" – done! Alternatively, upload the .jar via SFTP to the /mods folder.
Compatibility
Mod Loaders
Minecraft Versions
1.21.11
Server-side
✓ RequiredRecommended RAM
4 GB(min. 3 GB)Frequently Asked Questions
CardBoard SharkMI Fork server crashes on startup – what to do?
Most common cause: wrong fabric version or insufficient RAM. Check the server log (latest.log) for "OutOfMemoryError" or "Mixin" errors. With Mado Hosting: ensure at least 3 GB RAM is allocated and the loader matches the mod version (1.21.11). You can switch loaders with one click in the panel.
Is CardBoard SharkMI Fork compatible with fabric?
CardBoard SharkMI Fork officially supports fabric for Minecraft 1.21.11. The Mado dashboard automatically detects incompatible loader combinations.
Server lagging with CardBoard SharkMI Fork – how to optimize performance?
Recommended RAM: 4 GB (per 8 players). Use /spark profiler to check if CardBoard SharkMI Fork consumes the most tick time. Common fixes: reduce server view-distance to 8-10, install "performant" or "starlight" as supplementary mods on Forge. With Mado Hosting, your server runs on NVMe SSDs with dedicated CPU cores for minimal latency.
Similar Mods
Rent Modded Server
Install CardBoard SharkMI Fork with just one click on your server.