Open-source, cross-platform Security Technical Implementation Guide (STIG) viewer and checklist tool — a drop-in replacement for DISA's official STIG Viewer, built with Electron + React + TypeScript.
- Open STIG files — XCCDF XML files and STIG ZIP archives from DISA's website
- Open/Save CKL checklists — fully compatible with DISA STIG Viewer's
.cklformat - Assess findings — mark each rule as Open, Not a Finding, Not Applicable, or Not Reviewed
- Finding details & comments — add notes per rule
- Severity override — override severity with justification
- Asset information — record host details (name, IP, FQDN, MAC, role)
- Filter & search — filter by severity (CAT I/II/III), status, or full-text search
- Progress tracking — completion summary with per-status counts
- Multiple checklists — load and switch between multiple STIGs simultaneously
| Platform | Architecture |
|---|---|
| Linux | x86_64, ARM64 |
| macOS | x86_64 (Intel), ARM64 (Apple Silicon) |
| Windows | x86_64, ARM64 |
npm install
npm run dev# Build for current platform
npm run build
# Package for specific platforms
npm run build:linux # AppImage + deb + rpm (x64 + arm64)
npm run build:mac # DMG (x64 + arm64)
npm run build:win # NSIS installer (x64 + arm64)
npm run build:all # All platforms-
Open a STIG: File → Open STIG File(s)… or click + STIG in the sidebar
- Accepts
.ziparchives from DISA's STIG library - Accepts raw XCCDF
.xmlfiles
- Accepts
-
Open an existing checklist: File → Open Checklist (CKL)… or click + CKL
-
Assess a rule: Click a rule in the list → click the Assess tab → set status, add details, comments
-
Save: File → Save Checklist… or the Save CKL button
Generated .ckl files are compatible with DISA STIG Viewer 2.x and 3.x. You can exchange files between this viewer and the official tool.
src/
├── main/ # Electron main process (file dialogs, IPC)
├── preload/ # Context bridge (secure IPC surface)
└── renderer/src/
├── types/ # TypeScript types for STIG/Checklist data
├── lib/ # XCCDF parser, CKL parser/generator, ZIP handler
├── store/ # Zustand state store
└── components/ # React UI components
- Electron — cross-platform desktop shell
- React + TypeScript — UI
- electron-vite — fast builds with HMR
- Tailwind CSS — styling
- fast-xml-parser — XCCDF/CKL XML parsing
- JSZip — ZIP archive handling
- Zustand — state management
- electron-builder — cross-platform packaging
MIT — see LICENSE