RetroReversing

Scripts

Node.js utilities for analyzing markdown files in the categories/ and pages/ directories.

check-metadata.js

Finds markdown files missing specified frontmatter fields.

Usage

node scripts/check-metadata.js [field1] [field2] ...

Examples

# 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

Output

extract-tags.js

Extracts and analyzes all tags used in markdown frontmatter.

Usage

node scripts/extract-tags.js [options]

Options

Examples

# 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

Output

validate-tags.js

Validates all tags in markdown files against approved tags from tags-export.json.

Usage

node scripts/validate-tags.js [path-to-tags-export.json]

Arguments

Examples

# 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

Output

Prerequisites

Generate the tags export file first:

node scripts/extract-tags.js --export-json

GitHub Action Integration

The repository includes a GitHub Action (.github/workflows/markdown-validation.yml) that automatically runs these scripts on pull requests to ensure content quality.

What the Action Does

Action Outputs

Local Development

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