{"id":15107031,"url":"https://github.com/johannes-z/mkdocs-statblock-plugin","last_synced_at":"2026-01-25T08:33:17.752Z","repository":{"id":240669092,"uuid":"803278748","full_name":"johannes-z/mkdocs-statblock-plugin","owner":"johannes-z","description":"Renders rpg statblocks in mkdocs","archived":false,"fork":false,"pushed_at":"2024-05-26T09:04:47.000Z","size":115,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-24T22:44:27.980Z","etag":null,"topics":["mkdocs","mkdocs-plugin","pathfinder-rpg"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/mkdocs-statblock-plugin/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/johannes-z.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-20T12:23:44.000Z","updated_at":"2024-05-26T09:04:51.000Z","dependencies_parsed_at":null,"dependency_job_id":"b752fcfc-d4b8-49e7-93e0-f4e527d9be86","html_url":"https://github.com/johannes-z/mkdocs-statblock-plugin","commit_stats":{"total_commits":18,"total_committers":1,"mean_commits":18.0,"dds":0.0,"last_synced_commit":"ff1cb53e4bf102b840b7d34634ff134e969898e9"},"previous_names":["johannes-z/mkdocs-statblock-plugin"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/johannes-z/mkdocs-statblock-plugin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johannes-z%2Fmkdocs-statblock-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johannes-z%2Fmkdocs-statblock-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johannes-z%2Fmkdocs-statblock-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johannes-z%2Fmkdocs-statblock-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/johannes-z","download_url":"https://codeload.github.com/johannes-z/mkdocs-statblock-plugin/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johannes-z%2Fmkdocs-statblock-plugin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28749387,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-25T08:31:04.260Z","status":"ssl_error","status_checked_at":"2026-01-25T08:30:28.859Z","response_time":113,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["mkdocs","mkdocs-plugin","pathfinder-rpg"],"created_at":"2024-09-25T21:04:00.856Z","updated_at":"2026-01-25T08:33:17.736Z","avatar_url":"https://github.com/johannes-z.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# mkdocs statblock plugin\n\nThis mkdocs plugin scans your files for `statblock` code blocks and renders them\nas statblocks. The statblock templates are defined with jinja templates, which\nallows for great flexibility and thus supports virtually any system - all you\nneed is data in yaml format, and the template.\n\n## Installation\n\n```sh\npip install mkdocs-statblock-plugin\n```\n\n### Requirements\n\n* Python \u003e= 3.6\n* MkDocs \u003e= 1.6.0\n\n## Configuration\n\n| Option             | Description                                                                               | Required | Default |\n| ------------------ | ----------------------------------------------------------------------------------------- | :------: | :-----: |\n| `templates`        | The directory to scan for statblock templates. Relative to project root.                  |    x     |         |\n| `default_template` | The default template to use if none is specified in a statblock. Relative to `templates`. |          |         |\n| `bestiary`         | The directory to scan for statblocks. Relative to project root.                           |          |   `/`   |\n\nAdd the following lines to your `mkdocs.yml`:\n\n```yaml\nplugins:\n  - statblocks:\n      templates: docs/_statblocks/templates/\n      default_template: template.html\n```\n\n\u003e Tip: Put the templates in your docs folder so the page is automatically\n\u003e reloaded when using `mkdocs serve`.\n\nThe `templates` configuration tells the plugin which directory to scan for\nstatblock templates. A statblock can then reference the template by its filename\n(including the file extension, e.g. `dnd5e.html`).\n\n````md\n```statblock\nmonster: My D\u0026D 5e Monster\ntemplate: dnd5e.html\n```\n````\n\nIf the `template` option in a statblock is omitted, the plugin will use the\n`default_template` instead.\n\nBy default the plugin scans all files in your projct root for statblocks (files\nwith `.yaml` extension). You can override the root folder of your bestiary by\nadding the following configuration:\n\n```yaml\nplugins:\n  - statblocks:\n      - bestiary: bestiary/\n```\n\nThe bestiary folder is relative to the `docs_dir`. For example:\n\n```\n- docs/\n  - bestiary/\n    - goblin.yaml\n    - orc.yaml\n  - my cool file.md\nmkdocs.yml\n```\n\nYou can get most official Pathfinder 1e statblocks from [Pathfinder1\nStatblocks](https://github.com/johannes-z/pathfinder1-statblocks), including\ntemplates and basic styling.\n\n## Usage\n\nThe most basic usage is saving a statblock as `.yaml`-file under the bestiary\nfolder, and referencing it in your markdown file like this:\n\n````md\n# My Monster\n\n```statblock\nmonster: My Monster\n```\n````\n\nThis will search for a `my-monster.yaml` file in your bestiary folder, extract\nits contents and render the statblock.\n\nIf you want to override some values, you can do so by adding them to the code\nblock. Check the existing `.yaml`-file for how specify the values. The order of\nthe properties does not matter - it will always override the base monster with\nyour custom definition.\n\n````md\n# My Monster\n\n```statblock\nmonster: My Monster\nName: My Custom Monster\nCR: 20\nMelee: null # erase the base monster's Melee definition\n```\n````\n\nOf course you can design a monster from scratch, by omitting the `monster`\nproperty.\n\n\n## Roadmap\n\n* [x] Custom templates and a way to specify which template to use in statblocks\n* [ ] Performance fixes - only include statblock files that are referenced.\n\n## Example\n\n### Goblin\n\n_Example Goblin as provided by [Pathfinder1\nStatblocks](https://github.com/johannes-z/pathfinder1-statblocks). Description omitted for brevity._\n\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd\u003e\n\n````yaml\nName: Goblin\nCR: 1/3\nXP: '135'\nRace: Goblin\nClass: warrior 1\nAlignment: NE\nSize: Small\nType: humanoid\nSubType: (goblinoid)\nInit: '6'\nSenses:\n  - darkvision 60 ft.\n  - Perception -1\nAC: 16, touch 13, flat-footed 14\nAC_Mods: (+2 armor, +2 Dex, +1 shield, +1 size)\nHP: '6'\nHD: (1d10+1)\nSaves: Fort +3, Ref +2, Will -1\nFort: '3'\nRef: '2'\nWill: '-1'\nSpeed: 30 ft.\nMelee:\n  - short sword +2 (1d4/19-20)\nRanged:\n  - short bow +4 (1d4/x3)\nSpace: 5 ft.\nReach: 5 ft.\nAbilityScores:\n  - 11\n  - 15\n  - 12\n  - 10\n  - 9\n  - 6\nBaseAtk: '1'\nCMB: '0'\nCMD: '12'\nFeats:\n  - Improved Initiative\nSkills:\n  - Ride +10\n  - Stealth +10\n  - Swim +4\nRacialMods: +4 Ride, +4 Stealth\nLanguages:\n  - Goblin\nEnvironment: temperate forest and plains (usually coastal regions)\nOrganization: \u003e-\n  gang (4-9), warband (10-16 with goblin dog mounts), or tribe (17+ plus 100%\n  noncombatants; 1 sergeant of 3rd level per 20 adults; 1 or 2 lieutenants of\n  4th or 5th level; 1 leader of 6th-8th level; and 10-40 goblin dogs, wolves, or\n  worgs)\nTreasure: \u003e-\n  NPC gear (leather armor, light wooden shield, short sword, short bow with 20\n  arrows, other treasure)\nDescription_Visual: \u003e-\n  This creature stands barely three feet tall, its scrawny, humanoid body\n  dwarfed by its wide, ungainly head.\nSource: PFRPG Bestiary\nIsTemplate: '0'\nCharacterFlag: '1'\nCompanionFlag: '0'\nFly: '0'\nClimb: '0'\nBurrow: '0'\nSwim: '0'\nLand: '1'\nAgeCategory: adult\nDontUseRacialHD: '1'\nCompanionFamiliarLink: 'NULL'\nLinkText: Goblin\nid: '214'\nUniqueMonster: '0'\nMR: '0'\nMythic: '0'\nMT: '0'\n````\n\n\u003c/td\u003e\n\u003ctd\u003e\n\n\u003e The template for this statblock is fully customizable. Here the Pathfinder 1e\n\u003e template is used.\n\n![Example Goblin](_assets/example-goblin.png)\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\n## License\nMIT License © 2024-PRESENT Johannes Zwirchmayr\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohannes-z%2Fmkdocs-statblock-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjohannes-z%2Fmkdocs-statblock-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohannes-z%2Fmkdocs-statblock-plugin/lists"}