⚡ Blazing Fast
Built in Rust for maximum performance. Lint thousands of FSH files in seconds.
⚡ Blazing Fast
Built in Rust for maximum performance. Lint thousands of FSH files in seconds.
🔍 Comprehensive Rules
Extensive rule set covering FHIR and FSH best practices, from correctness to style.
🎨 Beautiful Errors
Rich, colorful diagnostics with code frames, diffs, and actionable suggestions.
🔧 Extensible
Write custom validation rules using powerful GritQL patterns.
⚙️ Configurable
Fine-tune every aspect with flexible JSON/JSONC configuration.
🚀 CI/CD Ready
First-class support for GitHub Actions, GitLab CI, and other platforms.
# Installcargo install fsh-lint
# Initialize configurationfsh-lint init
# Lint your FSH filesfsh-lint lint **/*.fsh
error[correctness/duplicate-definition]: Duplicate profile definition
> 15 │ Profile: PatientProfile │ ^^^^^^^^^^^^^^ Profile 'PatientProfile' is already defined 16 │ * name 1..1 MS 17 │ * gender 1..1
i Safe fix: Rename this profile to avoid duplication
15 │ - Profile: PatientProfile │ ^^^^^^^^^^^^^^^^ 15 │ + Profile: PatientProfile2 │ ^^^^^^^^^^^^^^^^^
FHIR Shorthand (FSH) is a domain-specific language for defining FHIR Implementation Guides. FSH Lint helps you catch errors early and maintain high-quality FHIR profiles.