100% client-side — your code never leaves your browser

Help & Documentation

Everything you need to get started with LadderScan

Contents

Getting Started

LadderScan is a static analysis and security scanner for IEC 61131-3 PLC programs — Structured Text, Function Block Diagram, and Ladder Logic. It runs entirely in your browser using WebAssembly — no installation, no uploads, no server-side processing.

Quick Start

  1. Open the Scanner
  2. Load your .st files by dragging them into the Files panel, or use File → Add File(s)
  3. Click Analyze (or Scan → Analyze Code)
  4. Review findings in the Results panel — click any finding to see it in context
  5. Apply auto-fixes where available, or edit code directly

Want to try it out first? Select an example from the Examples dropdown to load pre-built scenarios demonstrating different types of issues.

Loading Files

Drag & Drop

Drag one or more .st or .txt files directly onto the Files panel. You can also drag entire folders — LadderScan will recursively find all Structured Text files.

File Dialog

Use File → Add File(s) or the 📂 Open toolbar button to open your operating system's file picker. Multiple files can be selected at once.

New Files

Click File → New Project to start fresh, or use the + New button in the Files panel header to add a blank file to your existing project.

Editing

Click any file in the Files panel to open it in the code editor. The editor supports direct editing — modified files are marked with an asterisk (*). Use File → Save File to download the current file, or File → Save All Modified to download all changed files.

Scanning Your Code

Click the Analyze button or use Scan → Analyze Code to run the scanner. LadderScan performs:

Analysis runs instantly in your browser via WebAssembly. Results appear in the Results panel, sorted by severity.

Understanding Findings

Findings are categorized by severity:

Critical — Immediate safety or security risk. Hard-coded credentials, safety bypass, shared output conflicts. Must be fixed before deployment.

High — Significant issues. Missing emergency stops, infinite loops, latched outputs without reset. Should be fixed promptly.

Medium — Code quality and robustness. Hardcoded limits, missing input validation, potential overflow. Should be addressed.

Syntax — Structural errors in the code. Missing semicolons, malformed blocks. Must be fixed for the code to compile.

Each finding includes:

Use the severity filter buttons at the top of the Results panel to focus on specific severity levels.

Reviewing & Fixing Issues

Code Review Mode

Click View in Code on any finding to enter Review Mode. The code editor highlights the problematic lines:

Applying Fixes

When an auto-fix is available, click the Apply button on the green suggested code. LadderScan replaces the problematic code and automatically re-analyzes to update results.

Click anywhere else in the code view to exit Review Mode and return to editing.

Manual Fixes

For findings without auto-fix, read the suggestion, then edit the code directly in the editor. Click Analyze again to verify your fix.

Exporting Results

Security Report (JSON)

File → Export → Security Report generates a comprehensive JSON report containing:

This report can be imported into security dashboards, CI/CD pipelines, or compliance documentation.

Project ZIP

File → Export → Project ZIP bundles all your loaded files into a downloadable ZIP archive. Useful for saving your work or sharing with colleagues.

SARIF & SBOM

LadderScan also generates standard output formats when run via the CLI:

MenuActionDescription
FileNew ProjectClear all files and start fresh
FileAdd File(s)...Open file picker to load .st/.txt files
FileExport → Security ReportDownload findings as JSON
FileExport → Project ZIPDownload all files as ZIP
FileSave FileDownload the currently open file
FileSave All ModifiedDownload all modified files
ScanAnalyze CodeRun the scanner on all loaded files
HelpHelp PageThis page
HelpAboutVersion and copyright info

Supported Formats

Input

All Three IEC 61131-3 Languages

LadderScan supports the three most widely used IEC 61131-3 programming languages:

FBD and LD programs are automatically lowered to equivalent Structured Text, then analyzed with the full set of 40 detection rules. The visual Diagram view shows the original graphical representation alongside findings.

PLC Compatibility

LadderScan analyzes standard IEC 61131-3 Structured Text. Code exported from the following environments is supported:

Privacy & Security

Your Code Never Leaves Your Browser

LadderScan runs 100% client-side using WebAssembly. Your Structured Text code is processed entirely in your browser — nothing is uploaded, transmitted, or stored on any server.

This means:

This architecture was chosen specifically for industrial and critical infrastructure environments where code confidentiality is non-negotiable.

Analysis Engine

🔬 Deep Code Analysis, Not Just Pattern Matching

LadderScan uses a custom-built AST (Abstract Syntax Tree) parser for IEC 61131-3 Structured Text. Instead of relying solely on regular expressions, the engine parses your code into a full syntax tree — enabling accurate, context-aware detection of safety and security issues.

🏷️ Detection Method Indicators

Each finding in the scan report shows a colored pill indicating how it was detected:

AST-based rules provide higher accuracy with fewer false positives, as they understand code structure rather than just text patterns.

Detection Standard Coverage

The LadderScan detection standard covers six categories of industrial code issues across 38 rules:

All analysis runs entirely client-side via WebAssembly — your code never leaves the browser. See Privacy & Security for details.

FAQ

Is LadderScan free?

The browser-based scanner is free. Enterprise licenses, CLI access, and integration support are available for teams. See Pricing for details.

How do I report a false positive?

Contact us with the rule ID, a description of the false positive, and (if possible) a sanitized code snippet. We actively tune rules to minimize false positives.

Can I use LadderScan in my CI/CD pipeline?

Yes — the LadderScan CLI generates SARIF reports that integrate with GitHub Code Scanning, Azure DevOps, and other platforms. Contact us for CLI access.

What compliance frameworks does LadderScan support?

LadderScan's rules align with IEC 62443 (industrial cybersecurity), NERC CIP (critical infrastructure), and IEC 61131-3 best practices. The security report export supports compliance documentation workflows.

Does LadderScan support Ladder Logic or Function Block Diagram?

Yes! LadderScan supports all three major IEC 61131-3 languages: Structured Text, Function Block Diagram (FBD), and Ladder Logic (LD). Import PLCopen XML files containing FBD or LD programs, or paste ASCII ladder text directly. FBD and LD are automatically lowered to equivalent ST and analyzed with the full rule set. Use the Diagram toggle to view the original graphical representation.