Skip to main content
  1. Projects/
  2. CLI Tools/

FedRAMP TUI

··2 mins·
Ethan Troy
Author
Ethan Troy
hacker & writer
Table of Contents

FedRAMP TUI

What It Does
#

TUI for browsing FedRAMP documentation. Pulls data from the official FedRAMP/docs repo and lets you search requirements, look up definitions, and explore Key Security Indicators mapped to SP 800-53 controls.

How It Works
#

flowchart TD
    subgraph CLI["Command Line"]
        A[main.go]
        B[--refresh flag]
    end

    subgraph Core["Internal Packages"]
        C[internal/api]
        D[internal/cache]
        E[internal/model]
        F[internal/tui]
    end

    subgraph UI["Bubbletea TUI"]
        G[Tab Navigation]
        H[Requirements View]
        I[Definitions View]
        J[KSI View]
        K[Search]
    end

    subgraph Data["Data Source"]
        L[FedRAMP/docs Repo]
        M[Raw Markdown]
        N[JSON Files]
    end

    A --> B
    B -->|refresh=true| C
    B -->|refresh=false| D
    C --> L
    L --> M & N
    M & N --> E
    D --> E
    E --> F
    F --> G
    G --> H & I & J
    K --> H & I & J

The application is structured around four internal packages. The api package fetches raw markdown and JSON from the official FedRAMP/docs repository. The cache package stores data locally for 24 hours, so subsequent launches skip network calls unless you pass --refresh. The model package parses requirements, definitions, and KSI data into Go structs. Finally, the tui package renders everything using Bubbletea and Lip Gloss.

Cross-platform binaries are generated via GoReleaser.

Install
#

brew install ethanolivertroy/sectools/fedramp

Why
#

Wanted a quick way to look up FedRAMP requirements without digging through markdown files or the web. Data caches locally for 24 hours so subsequent launches are instant.

Cross-platform binaries via GoReleaser.

Related