REXX (Restructured Extended Executor) is a scripting language designed with one principle above all: human readability. Programs read like structured English prose. Where other languages optimize for machines, REXX optimizes for humans.
| Advantage | What It Means for SSG |
|---|---|
Readable syntax |
Template logic and build scripts that anyone can understand—no cryptic sigils or operator soup |
Parsing power |
The |
String supremacy |
Everything is a string. Markdown, HTML, JSON, YAML—all first-class citizens |
Cross-platform |
Regina REXX and ooRexx run everywhere: Linux, macOS, Windows, z/OS mainframes |
tyrano-ssg is for:
-
REXX enthusiasts exploring modern web tooling
-
Mainframe developers building documentation sites with familiar syntax
-
Simplicity advocates who believe build tools should be readable
-
Legacy system integrators bridging mainframe content to the web
Content flows through a pipeline of REXX procedures:
┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐
│ Watch │───▶│ Parse │───▶│ Render │───▶│ Emit │
│ Source │ │ Content │ │ Template │ │ HTML │
└──────────┘ └──────────┘ └──────────┘ └──────────┘Each stage is a self-contained REXX program. The pipeline coordinates via stems (REXX’s associative arrays) and compound variables.
REXX’s PARSE instruction is uniquely suited for content processing:
/* Extract frontmatter from markdown */
parse var content '---' . frontmatter '---' . body
/* Parse key-value pairs */
parse var line key ':' value
key = strip(key)
value = strip(value)
/* Template variable substitution */
parse var template '{{' varname '}}' restNo regex libraries needed. No external parsers. Just REXX doing what REXX does best.
-
Markdown to HTML — CommonMark-compliant rendering
-
Template inheritance — Layouts, partials, blocks
-
Frontmatter parsing — YAML-style metadata via
PARSE -
Incremental builds — Only rebuild what changed
-
Live reload — Development server with file watching
-
Asset pipeline — Copy, minify, fingerprint static files
Requires Regina REXX 3.9+ or ooRexx 5.0+.
# Clone the project
git clone https://github.com/hyperpolymath/tyrano-ssg
cd tyrano-ssg
# Initialize a new site
rexx tyrano init my-site
cd my-site
# Build the site
rexx tyrano build
# Start development server
rexx tyrano servemy-site/
├── content/ # Markdown content
│ ├── index.md
│ └── posts/
├── layouts/ # Template files
│ ├── base.html
│ └── post.html
├── static/ # Static assets
│ ├── css/
│ └── images/
├── output/ # Generated site
└── site.rexx # Configurationtyrano-ssg is part of the poly-ssg-mcp ecosystem—a unified MCP server for 28+ static site generators across 19 programming languages.
Related poly-mcp projects:
-
poly-ssg-mcp — Unified SSG management
-
poly-container-mcp — Container orchestration
-
poly-iac-mcp — Infrastructure as Code
A ReScript adapter provides integration with the poly-ssg-mcp protocol.
Named for the dinosaur, not the despot. REXX has mainframe heritage dating to 1979—a survivor from an era when programs were meant to be read. Like its namesake, tyrano-ssg is robust, enduring, and more capable than its age might suggest.
-
Regina REXX — Open source REXX interpreter
-
ooRexx — Object-oriented REXX
-
poly-ssg-mcp — Polyglot SSG MCP server