improve stubs, embedded images, and fix links#23
Merged
nschimme merged 11 commits intoMay 10, 2026
Conversation
- Identified 72 stub pages from prebuild output. - Merged unique content from stubs into relevant parent or category pages. - Created new category pages: Items.md, Mechanics.md, and Old_Forest.md. - Updated hundreds of internal links to point directly to hashtags in target pages. - Removed inappropriate aliases from frontmatter to favor direct linking. - Clarified that brushes are not required for herb mixing in Herbal_kit.md. - Verified that new target pages have sufficient content to avoid stub warnings. - Deleted the original 72 stub files.
This commit fixes the documentation build by addressing a massive number of dead links reported by VitePress. Key changes: - Corrected Quest link syntax across all markdown files from the incorrect 'Quest#Anchor.md' format to the standard 'Quest.md#Anchor'. - Resolved file name discrepancies by updating links to use the correct singular filenames (e.g., Cloak.md instead of Cloaks.md). - Implemented a redirection strategy for missing location pages (Isengard, Mirkwood, Trollshaws, Warrens) by pointing them to content anchors in lore.md and adding the corresponding HTML anchors. - Removed dead links to non-existent racial name pages and historical changelogs that are missing from the repository. - Fixed specific broken links in key landing pages like equipment.md, history.md, and guides.md. Verified that 'npm run docs:build' now completes successfully with zero dead links.
- Fix duplicate 'tolkien' anchor in docs/lore.md - Restore broken naming links in docs/races.md by pointing to Names.md - Correct typo 'acquaintances' in docs/pages/Aldereon.md and fix quest link formatting
Address code review feedback by: - Refactoring `scripts/fix_links.py` to use `posixpath` for OS-agnosticism. - Updating regex in `fix_links.py` to target only Markdown links and `href` attributes, preventing corruption of plain text in parentheses. - Implementing a `resolve_link` helper for clean, normalized relative paths. - Restoring missing anchors in `docs/lore.md` (isengard, mirkwood, warrens, etc.) to ensure link integrity. - Normalizing all relevant links across the documentation.
- Extend scripts/check-links.js to validate anchors in addition to page links:
- Build an anchor index from markdown headings (including {#custom-id} syntax)
- Capture HTML id= and name= attributes (fixing lore.md <a name="..."> anchors)
- Validate both cross-page anchors (page.md#section) and same-page (#section)
- Fail CI on dead anchors just like dead page links
- Add check-links.js to scripts/prebuild.cjs so it runs on every build
- Fix 109 dead anchors exposed by the new validator:
- Correct malformed Quest#Section.md → Quest.md#section format
- Correct malformed Herb#herb.md → Herb.md#herb format
- Fix Herblore/Super_Mobile/Anduin_Vale/Shield/Dagger/Ainur anchor formats
- Fix Newbie_Guide_to_Warrior_Skills.md anchor capitalization
- Fix Weapon.md item-level anchors to section-level anchors
- Replace Food_&_Drink#Drink.md with Food_&_Drink.md (no such section)
- Add missing eregion anchor to lore.md
- Fix Fornost.md#shops with proper shop page links
- Fix Help.md#guildmasters with Guildmasters.md
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Expand 10+ stub pages: Isengard, Mirkwood, Warrens, Eregion, Trollshaws, Cities, room, Playable_races, Old_Man_Willow, Leaflock, Ancient_Broken_Road, Weapons - Add Saruman.md (mobile page, quest-giver at Isengard) - Delete 5 empty/orphaned pages: Staff_and_Focus_guide.md, Metal/Mail/Leather/Cloth_equipment.md - Fix equipment.md#by-material to link to Armour.md sections instead of empty stub pages (with richer descriptions) - Fix 6 remaining dead links/anchors: Classes→Playable_races, Trollshaws#warrens→Warrens.md, Last_Bridge.md (removed), Saruman.md (created), Wizard→Istari Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Ranged weapon/ammo stubs: Ash_arrow, Bolt, Blackened_bolt, War_arrow, Metal-cased_bolt, Round_stone, Crossbow, Light_crossbow, Elven_shortbow, Orkish_shortbow, Dúnadan_blade — each now explains weapon type, ammo compatibility, and trade-offs between options. Mechanic stubs: Direction, Movement, Effort, Knock, Drink, Mix, Jail, Levels — expanded with syntax, tables, and gameplay context. Lore stubs: Easterling, Haradrim, Tolkien, Sting, Leaflock — added in-game relevance and proper See also links. Previously-thin improvements: room, Weapons, Playable_races, Ancient_Broken_Road — expanded past the stub threshold with tables and structured sections. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Equipment stubs: Belts, Cloaks, Containers, Keys, Consumables, Quest_items, Item — each now explains what the category contains, notable examples, and links to related pages. Ranged skill: Missile_weapons — added full ammo/weapon compatibility table and usage tips. Client pages: Pandora, Powwow, Tintin++, TinyFugue — each describes what makes the client distinctive and who should use it. Mechanic stubs: Guildmasters, Help, Drink (with liquid types table), Mix (with herblore workflow) — expanded with syntax and context. Lore/naming stubs: Dwarvish_names, Orcish_names — added Tolkien-based naming conventions and examples. Location stubs: Old_Forest, Brush, Massive_roots — added geography and gameplay context. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Shop stubs → city page tables: - Bree.md: Armoury hours/stock inlined; Weaponsmith and Herbalist kept as linked pages (quest hook and price-comparison content). - Fornost.md: King's Armoury, Mighty Hammer Weaponry, Tailor's Shop, Grocery, Small Bakery merged into shops table with hours and stock. - Tharbad.md: Armoury, Weapon Shop, Bakery (with menu), Grocery merged into shops table. - Grey_Havens.md: Harlond and Forlond Tailor/Grocer merged into sub-tables by district with opening hours. - Baker.md: fix dead link Tharbad_Baker → Tharbad.md#shops. - Fornost.md mobiles: unlink removed Fornost_Grocer reference. Deleted 14 shop stubs + Wikibot.md (orphaned, no inbound links). MUME IX: replace joke stub with real content (launched 2022, Bree-land rebuild, 10 new areas, expanded subraces, modern protocol support). Result: 1 stub remaining (Local_editing.md), zero dead links. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Identical content, no inbound links to either file. Removes the last remaining stub and leaves the wiki with zero stub pages. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…unused images Replace old !ImageName and <figure>!image</figure> syntax (left over from MediaWiki migration) with standard markdown  in 13 pages. Also place 12 previously unused images from /img/ onto appropriate pages (Saruman, Sauron, Moria, Old Forest, Elf, Man, Mmapper, PandoraMapper, MUME). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
Sorry @nschimme, your pull request is larger than the review limit of 150000 diff characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Improve UX by improving stubs, images, and links
Related Issue
Checklist
::: details Spoiler) as defined in the Contributing Guide.docker compose up --build wiki(ornpm run docs:build) and verified changes locally.docs/guides.md,docs/classes.md) if a major new page was added.