Compatibility
Minecraft: Java Edition
Platforms
Supported environments
Tags
Creators
Details
๐งฑ Render complex multiblocks. Parse Markdown right inside the UI.
๐ฌ Play video, GIFs and images โ on Windows, macOS and Linux via FFmpeg.
๐จ Fully customizable themes, per-book overrides, custom colors, optional visual effects.
๐ Interactive BooksDirect-from-disk compilation. Multi-book namespaces, zero JAR packing.sidebar search favorites keyboard hot-reload |
๐งฑ Multiblock ProjectionPreview and assemble complex structures step by step.layers rotation zoom progress HUD NBT |
๐ Markdown EngineFull Markdown rendered live inside the GUI.tables links spoilers items mobs sounds indentation |
๐ฌ MultimediaVideo, GIF and image playback directly in the book.JavaCV FFmpeg GIF WebP URL fullscreen ducking cache |
๐จ ThemesEvery UI element is fully themeable via JSON.per-book colors effects lock skinning |
๐ LocalizationEach book carries its own translations.lang/*.json fallback namespaces runtime |
๐ Multi-Book Config Autonomy
โธ Direct-from-Disk Compilation: Automatically maps and loads guidebooks from your local machine at config/guide/books/[book_id]/. No more packing files inside mod JAR archives.
โธ Automated Blueprint Generation: On the very first launch, the mod extracts a complete, ready-to-build guidebook template into your config folder, protecting custom assets from being overwritten during modpack updates.
โธ Clean Book Selector: Features a fully responsive book catalog viewport with active filtering, rendering isolated book namespaces cleanly with zero mod-ID conflicts.
โ๏ธ Hot-Reload & Dev-Friendly Pipeline
โธ Runtime Layout Swapping (/guide reload): Edit markdown files, layout nodes, textures, or JSON localization tables on your disk and instantly re-populate the guidebook memory in-game. Available to all players by default with no OP/cheat requirements.
โธ Quick-Access Chat Navigation (/guide): A dedicated chat handle that routes users directly to the main book catalog viewport from anywhere, removing item dependencies.
โธ Developer Mode Toggle: Hide instructional manuals or blueprints from players via config/guide/guide-client.toml while keeping them active for developers.
๐งญ Premium Navigation & Search Caret
โธ Overhauled Search Box: Equipped with a clean vertical caret (|) that flawlessly executes movement sequences and text selections across both English and Cyrillic keyboard layouts.
โธ Smart Sidebar Sub-Menus: Seamlessly nests dropdown sub-chapters (@submenu:) and spoilers behind clicks, optimizing render framerates and preventing layout clipping.
โธ Unbreakable Tracking & History: Navigation memory locks the expanded state of sidebar submenus, and text hyperlink hitboxes mathematically track lines perfectly under any dynamic scrollbar offset.
๐งฉ Advanced Content Rendering
โธ Natural Text Indentation Support: The Markdown engine fully respects space and tab blocks at the start of text sequences, allowing for structured nested lists without desyncing hyperlink areas.
โธ Direct Media Streaming: Renders static images (@image:) and animated GIFs (@gif:) straight from the local book directory, completely neutralizing the checkerboard placeholder texture glitch.
โธ Consolidated Multi-Block NBT Projection: The 3D hologram projector (PlacementProjector) and the page renderer (StructureRenderer) compile .nbt blueprints directly from the config folder. Creators can bundle multi-block structures natively into their guides without external datapacks.
๐ฌ Built-in Media System
โธ Video Playback: Play local and remote video files (mp4, avi, mkv, webm) directly inside guide pages using the @video: command. Supports direct HTTP(S) links with automatic caching, and includes a custom player with play/pause, stop, replay, volume slider, fullscreen, and a draggable progress bar with seek support.
โธ GIF and Image URL Support: Use direct HTTP(S) links in @gif: and @image: to load animated GIFs and static images (PNG, JPEG) from the internet. Files are cached in config/guide/cache/media/ for offline reuse.
โธ Sound Integration: Use the @sound: command to embed clickable sound buttons that play custom audio files from the book's sounds/ folder. Supports per-page playback with automatic music ducking.
โธ Smart Background Music Ducking: When a video or custom sound starts, the mod automatically pauses background music and restores it after playback ends.
๐ Mod & Quest Integration
โธ Live Server-Synced Checkboxes: Features a client-to-server interactive quest system. Quest completions are bound to player UUIDs and securely saved inside the server-side NBT structure, protecting progression files from local data wipes.
โธ JEI Navigation Ready: Bind chapters to specific item entries using @bind:mod_id:item to trigger matching guide pages directly inside JEI, or click guide item passposts to instantly pull up active recipe sheets.
| โจ๏ธ Command | Description |
|---|---|
| /guide | Open the main book catalog from anywhere โ no item required |
| /guide reload | Hot-reload all markdown, textures, JSON and themes without restarting the game |
โธ Both commands are available to all players by default โ no OP or cheat requirements.
| โ๏ธ Loader | ๐ฎ Game | ๐ฆ Version | โ JDK | ๐ฆ Status | ๐ฟ Branch | |
|---|---|---|---|---|---|---|
| Forge | 1.20.1 | 1.5.0+ | 17 | ๐ข Stable | forge-1.20.1 |
|
| NeoForge | 1.21.1 | 1.3.0+ | 21 | ๐ข Stable | neoforge-1.21.1 |
โธ Both branches share the same feature set โ multimedia, Markdown rendering, and multiblock projection are on par.
| ๐งฉ JEI | Bind chapters to items with @bind:mod_id:item. Click guide item passposts to instantly open recipes. |
| ๐ Flexmark-Java | Full CommonMark-compliant Markdown parsing engine that powers live in-GUI rendering of chapters, tables, links, spoilers, and indentation. |
| ๐ฌ FFmpeg / JavaCV / JavaCPP | Video decoding, transcoding, and frame-level media access through native FFmpeg binaries, wrapped by JavaCV and bundled via JavaCPP for Windows, macOS, and Linux. |
| ๐พ Media Cache | Automatic background music ducking during video / sound playback, plus offline media caching. |
config/guide/books/<book_id>/
โโโ chapters/ # Content sections
โ โโโ index.md # Primary index
โ โโโ introduction.md # First chapter
โ โโโ <language>/ # Language-specific files
โโโ lang/ # Localization
โ โโโ en_us.json
โ โโโ <language>.json
โโโ models/ # 3D model data
โโโ sounds/ # Background audio (.ogg)
โโโ videos/ # Local video files
โโโ textures/ # UI and image assets
โโโ structures/ # Multi-block .nbt blueprints
โโโ book.json # Metadata
๐ Example book.json:
{
"name": "<book_id>.book.guide",
"namespace": "<book_id>",
"default_chapter": "introduction",
"icon": "your_logo.png",
"bg_music": "background_music",
"theme": "<theme_id>",
"dev_only": false
}
Every UI element is themeable via JSON. Custom themes live in config/guide/themes/ โ copy the template below, tweak the colors, and save it as a new file (for example, my_theme.json).
๐ Example standard.json (config/guide/themes/standard.json):
{
"id": "standard", // unique theme identifier
"displayName": "guide.theme.standard", // display name (plain string or translation key)
"colors": {
// ===== General UI =====
"panelBackgroundColor": "0xCC1A1A1A", // panels background (book pages, side menus)
"panelHeaderBackgroundColor": "0xCC111111", // panel header background
"borderColor": "0xFF4A4A4A", // default border for panels and windows
"borderFocusedColor": "0xFF00D0FF", // focused element border
"textColor": "0xFFFFFF", // primary text color
"textSecondaryColor": "0x888888", // secondary text
"scrollbarTrackColor": "0x55111111", // scrollbar track background
"scrollbarThumbColor": "0xFF8B8B8B", // scrollbar thumb
"buttonColor": "0xFF2A2A2A", // default button
"buttonHoverColor": "0xFF3A3A3A", // button on hover
"buttonDisabledColor": "0xFF1A1A1A", // disabled button
// ===== Input Fields =====
"editBoxBackgroundColor": "0xFF000000", // input field background
"editBoxBorderColor": "0xFFA0A0A0", // input field border
"editBoxBorderFocusedColor": "0xFFFFFFFF", // input field border on focus
"editBoxTextColor": "0xFFFFFF", // input field text
// ===== Media Player =====
"mediaFrameOuterColor": "0xFF2D2D2D", // media outer frame
"mediaFrameInnerColor": "0xFF4A4A4A", // media inner frame
"mediaBackgroundColor": "0xFF000000", // playback area background
"mediaControlPanelColor": "0xCC000000", // control panel background
"mediaTextColor": "0xFFAAAAAA", // media player text
"mediaErrorTextColor": "0xFFFF5555", // error text
"mediaTimeTextColor": "0xFFCCCCCC", // playback time text
"progressBarTrackColor": "0xFF555555", // progress bar track background
"progressBarFillColor": "0xFF00D0FF", // progress bar fill
"progressBarThumbColor": "0xFFFFFFFF", // progress bar thumb
"progressBarThumbOutlineColor": "0xFF000000", // progress bar thumb outline
// ===== Inline Elements =====
"spoilerTitleColor": "0xFFAA00", // spoiler title
"inlineItemBackgroundColor": "0x550A0A0A", // inline item background
"inlineItemBorderColor": "0x25FFFFFF", // inline item border
"inlineItemTextColor": "0xFFAAAAAA", // inline item text
"soundButtonBackgroundColor": "0xFF2E2E2E", // sound button background
"soundButtonBorderColor": "0xFF5A5A5A", // sound button border
"soundButtonTextColor": "0xFFFFFF", // sound button text
"questStrikethroughColor": "0x77777777", // strikethrough quest text
// ===== Tables =====
"tableHeaderBackgroundColor": "0xFF222222", // table header background
"tableHeaderTextColor": "0xFFAA00", // table header text
"tableRowBackgroundColor": "0x11000000", // alternating row background
"tableBorderColor": "0xFF3A3A3A", // table borders
"tableCellTextColor": "0xFFFFFF", // table cell text
"dividerColor": "0xFF3A3A3A", // block dividers
// ===== Video Title =====
"videoTitleBackgroundColor": "0xCC2D2D2D", // video title panel background
"videoTitleBorderColor": "0xFF5A5A5A", // video title panel border
"videoTitleTextColor": "0xFFFFFF", // video title text
// ===== Warnings & Toasts =====
"warningTextColor": "0xFF5555", // primary warning text
"warningTextSecondaryColor": "0xFFAAAAAA", // secondary warning text
"toastBackgroundColor": "0xD0101215", // toast notification background
"toastTextColor": "0xFFFFFF", // toast notification text
// ===== Structure Panel =====
"structureFrameColor": "0x4000FFFF", // 3D structure preview frame
"structureTabActiveBackgroundColor": "0xFF555555", // active tab background
"structureTabInactiveBackgroundColor": "0xFF222222", // inactive tab background
"structureTabActiveTextColor": "0x00FFCC", // active tab text
"structureTabInactiveTextColor": "0x888888", // inactive tab text
"structureLayerTextColor": "0x55FF55", // structure layer label
// ===== Placement Projector =====
"projectorPanelBackgroundColor": "0xD0101215", // projector panel background
"projectorPanelBorderColor": "0x4000D0FF", // projector panel border
"projectorTitleTextColor": "0x00D0FF", // projector panel title
"projectorButtonBackgroundColor": "0x15FFFFFF", // default button background
"projectorButtonHoverBackgroundColor": "0x3000D0FF", // button background on hover
"projectorButtonBorderColor": "0x25FFFFFF", // default button border
"projectorButtonHoverBorderColor": "0xFF00D0FF", // button border on hover
"projectorButtonTextColor": "0xBBBBBB", // button text
"projectorButtonHoverTextColor": "0xFFFFFF", // button text on hover
"projectorDoneButtonHoverBackgroundColor": "0x3000FF55", // "Done" button background on hover
"projectorDoneButtonHoverBorderColor": "0xFF00FF55", // "Done" button border on hover
"projectorCancelButtonHoverBackgroundColor": "0x30FF2244", // "Cancel" button background on hover
"projectorCancelButtonHoverBorderColor": "0xFFFF2244", // "Cancel" button border on hover
"projectorHudTextColor": "0xFFFFFF" // projector HUD hint text
}
}
๐จ Color format
Colors are written in 0xAARRGGBB format:
| Channel | Range | Description |
|---|---|---|
| AA | 00 โ FF | Alpha channel (transparency). FF = fully opaque, 00 = fully transparent |
| RR | 00 โ FF | Red channel |
| GG | 00 โ FF | Green channel |
| BB | 00 โ FF | Blue channel |
โธ Tip: set alpha below FF (e.g. 80) to make panels semi-transparent.
Found a bug or encountered a crash? Open a ticket on the Issue Tracker.
| โฆ | Info required | Example |
|---|---|---|
| ๐ฎ | Minecraft version | 1.20.1 ยท 1.21.1 |
| โ๏ธ | Loader + version | Forge 47.4.20+ ยท NeoForge 21.1.0+ |
| ๐ฆ | Guide mod version | 1.5.0 ยท 1.3.0-NeoForge |
| ๐ | Related mods | List of mods that may interact with Guide |
| ๐ธ | Screenshots | Attach if the issue is layout-related |
| ๐ฅ | Crash report | Full latest.log or crash-report in a code block |
โธ The more details you provide, the faster the issue can be resolved.
| โฆ | ๐งฉ Project | ๐ค Author / Team | โก Contribution |
|---|---|---|---|
| ๐ | Just Enough Items (JEI) | mezz | In-game recipe integration |
| ๐ง | Minecraft Forge | LexManos ยท cpw | FML ecosystem ยท MCP tools |
| ๐ท | NeoForge | NeoForge Team | Modern modding platform for 1.21.1 |
| ๐ฌ | JavaCV | bytedeco | Cross-platform Java wrapper for native media libraries |
| ๐ฌ | JavaCPP | bytedeco | Native bindings & prebuilt binaries for FFmpeg / OpenCV |
| ๐๏ธ | FFmpeg | FFmpeg Team | Video decoding, transcoding & stream handling |
| ๐ | Open Source Community | Everyone | Bug reports, docs, and support |
Licensed under the MIT License.
You are allowed to include Guide in your modpack.
Any modpack that uses Guide takes full responsibility for user support queries.
We only support official builds, not custom modified jars.


