Percy's Sewing Kit is a datapack with a few useful items to help you customise your elytra, armor, and items!
Percy’s Sewing Kit is compatible with Minecraft Realms. Whether you're playing in singleplayer, multiplayer, or on Realms, you'll have the same experience everywhere!
To get started, you first need to craft a Sewing Kit.
The Sewing Kit is crafted by placing the following items in a crafting grid:
It's a shapeless crafting recipe, so it doesn't matter where you place the items in the crafting grid.
Note: Using an existing bundle for this crafting recipe will overwrite all items inside. Make sure you use an empty bundle. Be careful!
Inside your Sewing Kit, you'll find the following items:
The Sewing Shears are used to change the model/texture of your item.
To use these special shears:
Feel free to rename the item to anything you like after; it won’t affect the model until you repeat the steps above.
The Sewing String is used to change the equipment asset of your items. Equipment assets are the textures shown by armor, elytra, and more when worn on the body.
To use this special string:
Note: Pressing Sneak while using the Sewing String will update the equipment asset but not the item model.
Feel free to rename the item to anything you like after; it won’t affect the model or equipment asset until you repeat the steps above.
Shimmering Lapis Lazuli can toggle the enchantment glint of items.
To use this special Lapis Lazuli:
Before we get started with our resourcepack, it's important to understand that Minecraft makes a distinction between item models and equipment assets.
Item models are the models and textures that are shown in your inventory. Equipment assets are the textures that are shown on the player (and other mobs) when wearing armor and elytra.
The Sewing Shears set item models, the Sewing String sets equipment assets.
I've put together an example resourcepack to help you set up your own: Click here to download example resourcepack
In your resourcepack, item models are stored on this path: assets/<namespace>/items/<your_item>.json.
Here <namespace> is the namespace of your resourcepack, and <your_item> is the name of your item file.
As mentioned before, to get your item model on an item, you need to rename it to a namespaced ID. However, you don't need to fill in the entire path.
This is because Percy's Sewing Kit uses Minecraft's item_model component, which directly references the items folder, so you only need to fill in <namespace>:<your_item>.
For example, you have a custom item model called emerald_sword, and the namespace for your resourcepack is knights_of_emeralds, you store your item model here:
assets/knights_of_emeralds/items/emerald_sword.json, and rename your in-game item to knights_of_emeralds:emerald.
The Sewing String is used to set equipment assets. But because it also sets the item models, there are a few catches. First, let's explain where equipment models are stored, then I'll go into how to set up item models for this specifically.
In your resourcepack, equipment assets are stored on this path: assets/<namespace>/equipment/<your_asset>.json.
Here <namespace> is the namespace of your resourcepack, and <your_asset> is the name of your equipment file.
As mentioned before, to get your equipment asset on an item, you need to rename it to a namespaced ID. However, you don't need to fill in the entire path.
This is because Percy's Sewing Kit uses Minecraft's equippable component, which directly references the items folder, so you only need to fill in <namespace>:<your_asset>.
Because this sets both the equipment asset for your item, as well as the item model, your equipment asset and your item model need to have the same name.
For example, if you have custom elytra named emerald_wings, both the equipment asset and item model should have that name.
However, armor shares one equipment asset file per set (e.g. all diamond armor is in one equipment file), but item models for each armor item are unique (e.g. boots have a different texture than helmets). To deal with that, the Sewing Kit will append _<armor type> to the item model.
It will append the following for each armor type:
_helmet_chestplate_leggings_boots_horse_armor (1.21.8V1 and up)_nautilus_armor (1.21.11V1 and up)This means that in your resourcepack, the item models for each armor type should have the same name as the equipment model, only with "_<armor type>" appended at the end.
For example, if you have custom emerald armor and the namespace for your resourcepack is knights_of_emeralds, and you rename a chestplate to knights_of_emeralds:emerald, the datapack will set the equipment asset to the file stored here: assets/knights_of_emeralds/equipment/emerald.json, and the item model to the file stored here: assets/knights_of_emeralds/items/emerald_chestplate.json
For elytra, wolf armor, harnesses, carpets, and saddles, it won’t append anything.

An immersive datapack to get custom Items, Armor and Elytra! (Realms Compatible)