OVERVIEW

Introduction

RECALL is a declarative web interface language with COBOL-inspired syntax. It transpiles .rcl source files to self-contained, zero-dependency HTML files. Every compiled page embeds its .rcl source in an HTML comment block.

NOTE

RECALL is not a framework, runtime, or templating engine. It is a compiler. Source in. HTML out.


Quick Start

bash
npm install -g @semanticintent/recall
bash
recall compile my-site.rcl
TIP

That is it. No config. No build step. Open the .html file directly.

LANGUAGE

Divisions

Every RECALL program is divided into exactly five divisions, declared in order. This structure is borrowed directly from COBOL — explicit, readable, and non-negotiable.

DIVISIONREQUIREDDESCRIPTION
IDENTIFICATION DIVISIONREQUIREDProgram metadata — PROGRAM-ID, PAGE-TITLE, AUTHOR, DESCRIPTION, FAVICON.
ENVIRONMENT DIVISIONREQUIREDTheme and configuration — COLOR-MODE, VIEWPORT, PALETTE, FONT. Supports COPY FROM for theme inheritance.
DATA DIVISIONREQUIREDContent and variables — WORKING-STORAGE for scalars, ITEMS for hierarchical group data.
COMPONENT DIVISIONOPTIONALCustom element definitions — DEFINE, ACCEPTS, END DEFINE. Components are expanded at compile time.
PROCEDURE DIVISIONREQUIREDRender logic — named sections containing DISPLAY statements. Ends with STOP RUN.
WARNING

Divisions must appear in order: IDENTIFICATION, ENVIRONMENT, DATA, COMPONENT, PROCEDURE. Omitting COMPONENT DIVISION is allowed.

LANGUAGE

Elements

RECALL provides 16 built-in elements. All are invoked with DISPLAY inside a PROCEDURE DIVISION section.

ELEMENTARGUMENTSDESCRIPTION
HEADING-1/2/3value WITH STYLE MONO/SANSHeading at level 1, 2 or 3.
PARAGRAPHvalue WITH COLOR MUTED/TEXT/ACCENTBody paragraph text.
LABELvalueSmall uppercase label, used as section eyebrow.
CODE-BLOCKvalue WITH LANGUAGE bash/cobol/htmlMonospace code block with language hint.
BUTTONvalue ON-CLICK GOTO href WITH STYLE PRIMARY/GHOST/OUTLINEClickable link styled as a button.
CARD-LISTUSING group WITH COLUMNS 2/3 WITH HOVER-LIFT YESGrid of cards rendered from an ITEMS group.
TABLEUSING group WITH HEADERS col1, col2Bordered reference table from ITEMS data.
CALLOUTvalue WITH TYPE NOTE/TIP/WARNING/DANGERHighlighted callout block with typed accent color.
TABSUSING groupInteractive tabbed panels. Each ITEMS group is one tab.
NAVIGATIONUSING group WITH LOGO text WITH STICKY YESTop navigation bar with logo and links.
SIDEBAR-NAVUSING group WITH LOGO text WITH STICKY YESSidebar navigation. Only valid inside LAYOUT SIDEBAR.
SECTIONID id WITH LAYOUT CENTERED/STACK/GRID/SIDEBAR WITH PADDING SMALL/MEDIUM/LARGELayout container. Supports nesting for SIDEBAR layout.
DIVIDERWITH STYLE DASHED WITH SPACING SMALL/LARGEHorizontal rule.
BANNERvalueFull-width accent banner.
IMAGEWITH SRC url WITH ALT text WITH SIZE FULL/HALFImage element.
LINKvalue WITH HREF url WITH TARGET BLANKInline anchor link.
LANGUAGE

Copybooks

RECALL copybooks use the .rcpy extension — a deliberate reference to COBOL's .cpy format. Copybooks are never compiled standalone. They exist only to be COPY FROM'd into .rcl programs at compile time.

cobol
COPY FROM components/nav.rcpy.
TIP

Copybooks (.rcpy) are excluded from recall build automatically. Only .rcl files are compiled.

CLI

Command reference

The RECALL CLI provides three commands. All commands operate on files with the .rcl extension. Copybooks (.rcpy) are resolved automatically during compilation.

"recall compile <file.rcl>
"recall build <dir>
"recall check <file.rcl>