
BiteSync
BiteSync is a lightweight, client-side PvP quality-of-life mod. You know the moment: you're eating a golden apple mid-fight, you're at 94%, and your finger slips off right-click. The apple cancels, the eating starts over, and you die with food in your ha
Compatibility
Minecraft: Java Edition
Platforms
Supported environments
Tags
Creators
Details
BiteSync
Finish the bite. Keep the fight.
You're mid-fight, eating a gapple, 94% done — and your finger slips off right-click for a split second. The apple cancels, you start over, you die eating. BiteSync exists for exactly that moment.
If you've already eaten at least 90% of an item and you accidentally release the use key, BiteSync just keeps the eating action you already started running until it finishes at its normal vanilla tick. That's the entire mod.
What it actually does
You hold right-click and the item starts eating, completely vanilla. If you let go past the threshold (90% by default, can be raised up to 99%), BiteSync holds the existing use action for you — same effect as your finger never leaving the button. The item finishes on its normal tick, BiteSync resets, done.
Let go below 90%? Cancels like vanilla, always. BiteSync doesn't touch it.
Progress is calculated from the item's actual use ticks, not real time or framerate, so ping and FPS don't throw it off.
What it will never do
This is not an auto-eat mod and it's not trying to sneak past anything:
- It never starts eating for you. Every consumption begins with your own key press.
- It never eats the next item in the stack. Assistance ends with the current item — chain-eating only happens the vanilla way, by physically holding the button.
- It doesn't speed anything up. The item takes its full normal duration, and the eating slowdown applies the whole time. No fast-eat, no no-slow.
- It doesn't build, send, delay, or block any packets. The server only ever sees the normal traffic Minecraft produces for a held use key.
- There's no anti-cheat detection or bypass logic anywhere in the code.
Whether a server allows it is up to that server. Read the rules before you use it — nothing here overrides an admin's decision.
Cancellation
The moment you do anything else, BiteSync gets out of the way and your input goes through untouched:
- Attacking (air, block, or entity) cancels it instantly — the attack itself is never blocked or duplicated
- Switching hotbar slots cancels it, including while eating from the offhand
- Swapping hands cancels it
- Dropping an item cancels it
- Opening your inventory or any other screen cancels it — nothing keeps eating behind a menu
- Dying, changing worlds, or disconnecting resets everything
- If the server replaces or corrects the stack, the server wins and the session ends
None of these can be turned off in the config. There's also a per-item timeout, so it can't ever get stuck holding a use action.
The HUD
While you're eating something eligible, a small transparent overlay sits above your hotbar: the item's icon, the live percentage under it, and a thin progress bar with a marker at 90%. Past the threshold the bar shifts to a quiet green so you know assistance is armed. No sounds, no flashing.
The icon always shows the item you're actually consuming right now — main hand or offhand — and every item gets a fresh readout, including each apple in a stack.
Position, scale, offsets, and individual elements are all configurable, or you can turn the HUD off entirely. It follows your GUI scale and works fine with resource packs and custom item models.
Supported items
Anything with a real vanilla-style eat or drink action: food, golden apples, potions, milk, honey bottles, stews, plus modded consumables that use the vanilla consumable component.
Bows, crossbows, shields, tridents, spyglasses, brushes, and buckets are never touched — this only applies to actual consumption.
There's a filter system too: run it on all consumables, or switch to allowlist-only mode. The denylist always wins, so you can block chorus fruit or whatever else you don't want assisted.
Config
config/bitesync.json is created on first launch. Threshold, filters, and full HUD control. The threshold can't be set below 90% — values outside the range get clamped. If the file ever gets corrupted it's backed up and regenerated instead of crashing the game.
If you have Mod Menu installed there's a settings screen with sliders for everything, built from plain vanilla widgets — no config library needed. Everything works fine without Mod Menu too.
Installation
- Fabric Loader
- Fabric API
- BiteSync jar into
mods
Grab the file that matches your Minecraft version exactly. There's one jar per version (1.21.5 through 1.21.11, and 26.1), and each one pins its Minecraft dependency — a wrong jar refuses to load with a clear message rather than half-working.
Client-side only, nothing needed on the server. Plays fine with Sodium, Lithium, ImmediatelyFast, and remapped keybinds.
Source
MIT licensed. Code, issues, and full docs (including the anti-cheat testing procedure) are on GitHub.

