Elements

graph TD; %% REQVIRE-AUTOGENERATED-DIAGRAM %% Graph styling classDef userRequirement fill:#D1C4E9,stroke:#7E57C2,stroke-width:2px; classDef systemRequirement fill:#E1D8EE,stroke:#673AB7,stroke-width:1.5px; classDef verification fill:#DCEDC8,stroke:#4CAF50,stroke-width:2px; classDef folder fill:#FAFAFA,stroke:#9E9E9E,stroke-width:3px; classDef file fill:#FFF8E1,stroke:#FFCA28,stroke-width:2px; classDef default fill:#F5F5F5,stroke:#424242,stroke-width:1.5px; subgraph 46bd8996ef832bd8["📁 requirements/Interfaces/WebInterface"] subgraph 5d341d66c5d20d4a["📄 Specifications.md"] 2c269288950887aa["D3.js Containment Tree Specification"]; class 2c269288950887aa default; click 2c269288950887aa "Specifications.html#d3js-containment-tree-specification"; ac8ced009233741a["HTML Branding Specification"]; class ac8ced009233741a default; click ac8ced009233741a "Specifications.html#html-branding-specification"; 32592aed4644ac95["HTML Export Pipeline Specification"]; class 32592aed4644ac95 default; click 32592aed4644ac95 "Specifications.html#html-export-pipeline-specification"; 1c6c804d67bc741e["HTML Navigation Bar Specification"]; class 1c6c804d67bc741e default; click 1c6c804d67bc741e "Specifications.html#html-navigation-bar-specification"; 945adb3f0ea1012e["Web Interface Style Specification"]; class 945adb3f0ea1012e default; click 945adb3f0ea1012e "Specifications.html#web-interface-style-specification"; end end

D3.js Containment Tree Specification

Specification for the D3.js interactive containment tree visualization.

Details

The containment page (containment.html) shall display an interactive D3.js collapsible tree showing the containment hierarchy:

  1. Root node representing the model root
  2. Folder nodes that can be expanded/collapsed
  3. File nodes containing element children
  4. Element nodes with type-specific icons and colors
  5. Attachment nodes as children of elements (element and file attachments)
  6. Clickable elements that navigate to their definitions
  7. Expand All / Collapse All buttons for tree control

The containment view serves as the primary entry point for HTML documentation, providing an interactive visual overview of the model structure.

Metadata

  • type: specification

Relations


HTML Branding Specification

Specification for Reqvire branding elements in HTML export.

Details

Logo and Branding:

  • The navigation bar shall display the Reqvire logo on the left side before the navigation links
  • A favicon shall be included for browser tab identification
  • Apple touch icons shall be included for mobile device support
  • All brand assets shall be exported to an assets folder during HTML export

HTML Design: The system shall design and implement HTML pages with consistent layout, styling, and navigation for browsing the System model.

Metadata

  • type: specification

Relations


HTML Export Pipeline Specification

Technical specification for HTML export generation pipeline.

Details

Working Directory Setup:

  • Create temporary working directory (e.g., in /tmp)
  • Generate markdown files from registry with full relations (user-created and auto-generated inverse relations)
  • Copy all related system elements (following satisfiedBy and other relations)
  • Copy all attachment files to temporary directory preserving structure

Generation Pipeline (in temporary directory): Execute all generation commands treating temporary directory as repository root:

  1. Generate all Mermaid diagrams in markdown files
  2. Generate index.md (interactive D3.js tree showing containment hierarchy - main entry point)
  3. Generate model.md (model-centric visualization with nested relations from root requirements)
  4. Generate traces.md (verification upward traceability)
  5. Generate coverage.md (verification coverage report)

HTML Conversion:

  • Convert all markdown files to HTML with embedded styles
  • Process Mermaid diagrams for web rendering
  • Convert internal .md links to .html links
  • Preserve directory structure

Output:

  • Accept optional --output option to specify output directory
  • When --output is not specified, export to a temporary directory and print the path
  • When --output is specified, create output folder if not existing
  • Copy generated HTML and all artifacts from temp directory to output directory
  • Clean up temporary working directory (except when output is temp directory)

Source Protection:

  • Never modify original repository files
  • All generation happens in isolated temporary directory

Git Directory Exclusion:

  • The .git directory shall never be exported to the output folder
  • This prevents internal git metadata from polluting the exported documentation

Export Related System Elements:

  • Ensure that any related system elements are also copied into output folder to ensure consistency of exported model

Metadata

  • type: specification

Relations


HTML Navigation Bar Specification

Specification for the fixed navigation bar in HTML pages.

Details

The system shall provide a fixed navigation bar in all HTML pages with links to key model artifacts for easy access.

The navigation bar must include (left to right):

  • Containment: Link to containment.html (interactive D3.js tree - main entry point)
  • Model: Link to model.html (model-centric view with nested relations)
  • Traces: Link to traces.html (verification upward traceability report)
  • Coverage: Link to coverage.html (verification coverage report)

The navigation bar must be:

  • Always visible (fixed position) while scrolling
  • Consistent across all HTML pages
  • Clearly visible and accessible

Metadata

  • type: specification

Relations


Web Interface Style Specification

Styling conventions for HTML export web interface.

Details

Page Layout:

  • Navigation bar at top with links to views
  • Content area with responsive width
  • Sidebar for element tree (optional)

Typography:

  • System font stack for readability
  • Monospace for code and identifiers
  • Heading hierarchy matches markdown levels

Color Palette (MONO Theme): The web interface uses a monochrome grayscale theme for consistent, professional appearance.

UsageColorNotes
Navigation background#1c1c1cDark gray for main nav bar
Navigation hover#2a2a2aSubtle highlight on hover
Primary/Buttons#333333Lighter gray for interactive elements
Primary hover#4a4a4aButton hover state
Page background#FAFAFALight gray page background
Content background#FFFFFFWhite content cards
Text primary#212121Dark gray for headings
Text secondary#424242Medium gray for body text
Text muted#757575Light gray for secondary info
Links#4a4a4aGrayscale links
Borders#EEEEEELight borders
Highlight#d0d0d0Selection/highlight color

Element Cards:

Element TypeBorder ColorBackground
Requirement#0066FF#D0E0FF
User-requirement#0066FF#D0E0FF
Verification#CC9900#FFF7B3
Behavior#9900CC#E0D0FF
Specification#009900#DFFFD0
Constraint#CC0000#FFD0D0

Navigation:

  • Breadcrumb trail for element hierarchy
  • Clickable relation links
  • Collapsible sections for long content

Metadata

  • type: specification

Relations