Node.js utilities for analyzing markdown files in the categories/ and pages/ directories.
Finds markdown files missing specified frontmatter fields.
node scripts/check-metadata.js [field1] [field2] ...
# Check for missing editlink and updatedAt fields (default)
node scripts/check-metadata.js
# Check for specific fields
node scripts/check-metadata.js title layout permalink
# Check single field
node scripts/check-metadata.js updatedAt
Extracts and analyzes all tags used in markdown frontmatter.
node scripts/extract-tags.js [options]
--sort-by-count - Sort by usage count (default)--sort-by-name - Sort alphabetically--detailed - Show which files use each tag--export-json - Export data to tags-export.json--export-csv - Export statistics to tags-export.csv--help - Show help# Basic tag analysis
node scripts/extract-tags.js
# Alphabetical sorting with detailed file listings
node scripts/extract-tags.js --sort-by-name --detailed
# Export data for further analysis
node scripts/extract-tags.js --export-json --export-csv
Validates all tags in markdown files against approved tags from tags-export.json.
node scripts/validate-tags.js [path-to-tags-export.json]
path-to-tags-export.json - Path to valid tags file (default: tags-export.json)# Validate against default tags-export.json
node scripts/validate-tags.js
# Validate against custom tags file
node scripts/validate-tags.js /path/to/custom-tags.json
Generate the tags export file first:
node scripts/extract-tags.js --export-json
The repository includes a GitHub Action (.github/workflows/markdown-validation.yml) that automatically runs these scripts on pull requests to ensure content quality.
categories/ or pages/Run the same checks locally before pushing:
# Quick validation
node scripts/validate-tags.js
# Full metadata analysis
node scripts/check-metadata.js editlink title
# Generate fresh tags export
node scripts/extract-tags.js --export-json