A collection of free, open-source Minecraft server utilities built with Next.js, React, and Tailwind CSS. Each tool is designed to help server owners configure, preview, and manage parts of their Minecraft server.
Live at — deployed as part of the Gravel Host platform.
A visual editor for Minecraft server MOTDs (Message of the Day). Type and format text with the toolbar, and see exactly how it will look in the Minecraft server list.
- Two-line editor with a live server-list preview (background, icon, and Minecraft font rendering)
- 16 color buttons and 6 format buttons (bold, italic, underline, strikethrough, obfuscated, reset) matching Minecraft's
§formatting codes - Real-time MOTD code output with one-click copy
- Keyboard navigation between lines (Enter / Backspace)
Module breakdown:
| File | Purpose |
|---|---|
page.tsx |
React component — editor UI, toolbar, preview area, copy output |
constants.ts |
Minecraft color/format code mappings, button key arrays, default state |
types.ts |
FormatState interface shared across modules |
motd-utils.ts |
Pure functions — DOM-to-MOTD parsing, format code application, selection formatting |
Estimates monthly cost and player capacity for a Minecraft server based on RAM allocation.
- Three pricing tiers (Budget, Premium, Ultimate)
- Three game profiles (Vanilla, Paper/Purpur, Modpacks) with sensible RAM defaults
- Interactive slider (1–128 GB) with live price and player capacity estimates
Look up any Minecraft player's skin by username, view it in 3D, and download or share it.
- 3D skin viewer powered by skinview3d (THREE.js)
- Download skin as PNG
- Shareable deep-links via URL hash (
#ign=username) - Proxied through a local API route to avoid CORS issues
Look up any Minecraft player's capes across multiple providers and download them.
- Fetches capes from Mojang, Optifine, MinecraftCapes, LabyMod, 5zig, and TLauncher
- Download cape images directly
- Shareable deep-links via URL hash (
#ign=username)
Upload any image and convert it to a properly sized Minecraft server icon.
- Resizes images to the required 64×64 pixels
- Live preview before downloading
- Download the converted icon ready to drop into your server folder
Generate server startup scripts (.bat / .sh) with optimized JVM flags.
- Supports Aikar's flags and proxy server presets
- Configurable memory allocation and JAR file name
- Outputs ready-to-use batch (Windows) and shell (Linux/macOS) scripts
Proxies skin requests to Minotar and returns the PNG image. Validates the username (1–16 alphanumeric characters or underscores) and caches responses for 1 hour.
app/
├── api/skin/[username]/route.ts # Skin proxy API
├── cape-grabber/
│ └── page.tsx
├── minecraft-ram-calculator/
│ └── page.tsx
├── motd-creator/
│ ├── page.tsx # Editor component
│ ├── constants.ts # Color/format maps
│ ├── motd-utils.ts # Parsing & formatting logic
│ └── types.ts # Shared types
├── server-icon-converter/
│ └── page.tsx
├── skin-grabber/
│ └── page.tsx
├── start-file-generator/
│ └── page.tsx
├── layout.tsx # Root layout & metadata
├── globals.css # Tailwind config, Minecraft colors, custom fonts
└── page.tsx # Home page
components/ui/ # shadcn/ui components (Button, Card, Slider, etc.)
lib/utils.ts # cn() class-merge helper
public/
├── fonts/ # Minecraft font files (Regular, Italic, Bold, BoldItalic)
├── minecraft-background.png # MOTD editor dirt-block background
└── unknown_server.jpg # Default server icon
- Framework — Next.js 16 (App Router)
- Language — TypeScript 5 (strict mode)
- Styling — Tailwind CSS 4
- UI primitives — shadcn/ui + Radix UI
- Icons — Lucide
- 3D rendering — skinview3d (THREE.js)
- Package manager — Bun
# Clone the repo
git clone https://github.com/gravelhost/tools.git
cd tools
# Install dependencies
bun install # or: npm install
# Start the dev server
bun dev # or: npm run devOpen http://localhost:3000 in your browser.
bun run build
bun startContributions are welcome! Whether it's a bug fix, a new tool, or an improvement to an existing one — we'd love your help.
- Fork the repo
- Create a feature branch (
git checkout -b my-feature) - Make your changes
- Make sure the build passes (
bun run build) - Open a pull request
- Keep tools focused — each one should solve a specific Minecraft server admin problem
- Use the existing UI components (
components/ui/) and styling conventions - Client components go in
app/<tool-name>/page.tsx; extract logic into sibling modules when the file grows - Test your changes across screen sizes — all tools should work on mobile
Open source. See the repository for license details.