DraftSmith
A lightweight, server-side building editor for Fabric — fully crossplay.
DraftSmith is not a WorldEdit replacement. It's the small, handy toolkit for people who build: paint brushes, parametric shapes, measuring tools, a clipboard and undo — all driven by chest GUIs that work for Java and Bedrock players alike (via Geyser/Floodgate). Nothing is installed on the client. Drop the jar on the server and your builders have a full kit on any world.
Paint brushes
/draft brush hands you a brush that paints strokes of blocks wherever you aim, up to 30 blocks
away. Right-click paints; sneak + right-click opens its settings screen. Settings live on the
brush itself — every brush is its own preset, so keep a gravel-path brush in slot 1 and a leaf
blob in slot 2 and swap like a painter (anvil-rename safe).
- Eleven brush types: Splatter, Round, Overlay, Spray, Wall, Gradient (paints your palette in order — rings on the ground, bottom-to-top bands on walls), Blend (re-mixes what's already there until seams disappear), Raise / Lower / Smooth terraformers, and Erase.
- Dials: size (radius up to 15), density, fade (edges thin out naturally), Surface vs Ball mode, and a mask — "paint over only X".
- 9-slot weighted palette: duplicates make a block proportionally more common — 3× grass + 1× moss paints a mostly-grass mix.
- 9-slot protected list: the mask in reverse — blocks the brush must never paint over. Re-texture a mixed floor without eating the carpet; terraform around a path without touching it.
- Smart placement: slabs, carpets and plates rest on top of the ground while full blocks replace the surface (decided by collision shape, so modded blocks work too). Buttons and levers lie flat. Splatter and spray never stack pillars upward.
- Particle previews: a ring shows the brush's exact radius while you aim.
Shapes
Circle, square, sphere, cylinder, pyramid and 3D line — filled or hollow (ring / frame / shell / tube), with size, height, thickness, and repeat × spacing dials. Shapes build where you aim, or on the self-cleaning gold center marker; even sizes get a true 2×2 center.
Measuring tools
A live Width × Height × Length selection readout, find-center, and yellow/black measuring tapes with glowing numbered signs — up to 4 at once, and they restore exactly what they covered.
Clipboard & selection
A selection wand (/draft wand) with a green particle outline, copy/cut, paste lands where you
aim, and stack/move along your facing. Random texture mode makes every edit and every block
you place by hand roll from your hotbar — lay natural paths without ever scrolling.
Undo
10 edits deep per player. Every stroke or build is one undo entry, and a 65,536-blocks-per-edit cap means a single operation can never freeze the server.
Ships safe
DraftSmith is ops-only by default — non-ops see nothing, not even the /draft command. Open
it up with the config (editors name list, worlds dimension list), or install
LuckPerms (or anything implementing fabric-permissions-api) for per-tool permission nodes:
| Node | Grants |
|---|---|
draftsmith.use |
See /draft, open the hub, corners, undo/redo |
draftsmith.wand |
The selection wand |
draftsmith.edit |
Fill/replace/walls + clipboard |
draftsmith.shapes |
Shapes |
draftsmith.brush |
Paint brushes |
draftsmith.measure |
Tape and find-center |
draftsmith.admin |
Reload + unclamped editing |
Give your Builder rank the wand and fill tools, your Artist rank the brushes and shapes — hub buttons a player can't use simply don't appear.
Install
Server side only — drop into the server's mods/ folder:
- DraftSmith (this mod)
- Fabric API
- sgui — download from maven.nucleoid.xyz (the version matching your Minecraft version)
Type /draft in game — the hub GUI opens. /draft help lists every command.
For developers
Every block DraftSmith writes goes through one interface — EditAccess. Your mod can jail the
editor to its own rules (region ownership, claims, anything) and attach the same commands under
its own root. FabricPlots does exactly this: it
bundles DraftSmith and serves every tool as /plot subcommands, jailed to plot ownership.
Source and issues: GitHub — beachfury/draftsmith. Also on Modrinth.

