Central public documentation aggregator and Starlight site for 1MoreBlock server features.
This repository is the only builder and GitHub Pages publisher for https://docs.1moreblock.com. Source projects own their documentation, while this repository imports each project into an isolated namespace, generates the combined player site, validates ownership, and deploys the complete result.
- 1MoreBlock Features are feature plugins built together in
1MB-CMIAPIand the 1MB Library. Their existing/player-guides/plugins/<slug>/URLs remain stable. - Custom Server Plugins are standalone 1MoreBlock projects such as Lootbox, EventFloaties, or mcMMO-More.
- Other Server Features are curated guides for third-party plugins used on the server, with links to official documentation.
Imported projects never share a source directory:
project-docs/
cmi-api/
README.md
docs/
SYNCED_FROM.md
lootbox/
README.md
docs/
SYNCED_FROM.md
The importer replaces only project-docs/<project-id>/. It never removes the complete project-docs/ tree or another project's namespace.
Generated standalone pages are isolated too:
src/content/docs/player-guides/custom-server-plugins/<project-id>/index.md
src/content/docs/player-guides/other-server-features/<feature-id>/index.md
From this repository:
npm install
npm run docs:sync
npm run buildnpm run docs:sync remains the CMI-only workflow. It imports the sibling ../CMI-API checkout into project-docs/cmi-api/ and regenerates the complete site without changing other namespaces.
When CMI-API lives elsewhere:
PRIVATE_DOCS_SOURCE=/path/to/CMI-API npm run docs:syncStandalone projects provide README.md, a docs/ directory, and docs/plugin-docs.yml. Import one with:
npm run docs:import -- --source ../1MB-Lootbox
npm run docs:generate
npm run docs:validate
npm run buildThe first command registers or refreshes only that project. Later updates can use:
node scripts/sync-docs.mjs --project lootbox
npm run docs:generateTo refresh every registered local source checkout:
npm run docs:sync:allSee Adding Documentation Sources for the manifest contract, curated third-party workflow, validation rules, and publishing checklist.
npm test
npm run docs:check
npm run docs:validate
npm run buildValidation rejects malformed manifests, unsafe IDs and paths, duplicate IDs and canonical URLs, unregistered namespaces, stale generated pages, and generated directories without an owning manifest. The production build runs the tests and read-only generated-content drift check before Astro, so GitHub Pages cannot deploy from stale committed Starlight output.
This repository intentionally excludes plugin source code, built jars, private server folders, databases, paid plugin files, internal task logs, credentials, and exploit-sensitive operational notes.
Pushes to main run the Starlight build and deploy GitHub Pages.
- Public URL:
https://docs.1moreblock.com/ - GitHub Pages origin:
https://mrfdev.github.io/1MB-Plugins-Docs/
The custom domain is configured through public/CNAME and astro.config.mjs.