This directory contains development utilities for the Varlyn D&D site.
lint-markdown.js - Validates markdown formatting, headings structure, and consistent stylingtest-structure.js - Validates Varlyn-specific patterns like **TRAIT**. DESCRIPTION, frontmatter schema, TOC consistencyvalidate-class-profiles.js - Validates class profile YAML schemas and trait definitionsextract-searchable.rb - Extracts searchable content for site search functionalityextract-archetypes.rb - Extracts archetypes from class files to _data/archetypes.ymlextract-folk.rb - Extracts folk and subtypes to _data/folk.ymlvalidation-utils.js - Shared validation utilities used by multiple toolsAll tools are callable from the Makefile:
make lint-md # Run markdown linter
make test-structure # Run structure validation
make validate-profiles # Validate class profile schemas
make test # Run all validation tools
make test-verbose # Run validation with detailed output
make extract # Extract searchable content, archetypes, and folk
# Validation (Node.js)
node tools/validate-class-profiles.js # Validate class profile schemas
node tools/lint-markdown.js # Lint markdown files
node tools/test-structure.js # Test Varlyn structure patterns
# Content Management (Ruby)
ruby tools/extract-searchable.rb # Extract searchable content for site search
ruby tools/extract-archetypes.rb # Extract archetypes from class files
ruby tools/extract-folk.rb # Extract folk and subtypes
Tools are written in Node.js and Ruby and should follow these conventions:
All tools are designed to work within the Docker-based development environment defined in the Makefile.