
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/fedrampWhy#
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.




