The Pre-Flight Impact Analysis Engine for Engineering Teams.
Project description
jnkn
The Pre-Flight Impact Analysis Engine for Engineering Teams.
jnkn (pronounced "Jenkin") prevents production outages by stitching together the hidden dependencies between your Infrastructure (Terraform), Data Pipelines (dbt), and Application Code (Python/JS).
📚 Read the Full Documentation
The Blind Spot
Most tools operate in silos. Terraform sees resources, dbt sees tables, code sees imports. jnkn sees the glue.
It detects the invisible, cross-domain breaking changes that slip through every other tool:
graph LR
subgraph "The Gap"
TF[Terraform Change] --"Breaks"--> CODE[App Configuration]
CODE --"Breaks"--> DATA[Data Pipeline]
end
style TF fill:#ff6b6b,color:#fff
style DATA fill:#ff6b6b,color:#fff
🚀 Quick Start
Get running in less than 2 minutes.
1. Installation
pip install jnkn
2. Initialize & Scan
Navigate to your project root (monorepo or service).
# Detects your stack (Python, Terraform, etc.)
jnkn init
# Builds the dependency graph
jnkn scan
3. Find Impact
Simulate a change to see what breaks downstream.
# If I rename this env var, what code breaks?
jnkn blast env:DATABASE_URL
# If I modify this Terraform resource, what app fails?
jnkn blast infra:payment_db_host
🤖 CI/CD Integration
Block breaking changes in Pull Requests before they merge.
# .github/workflows/jnkn.yml
steps:
- uses: actions/checkout@v4
- name: Run Jnkan Gate
run: |
pip install jnkn
# Blocks if critical dependencies are broken
jnkn check --git-diff origin/main HEAD
Supported Stacks
| Domain | Supported Patterns |
|---|---|
| Python | os.getenv, Pydantic Settings, Click/Typer, django-environ |
| Terraform | Resources, variables, outputs, data sources |
| Kubernetes | ConfigMaps, Secrets, environment variables |
| dbt | ref(), source(), manifest parsing |
| JavaScript | process.env, dotenv, Vite |
Contributing
We welcome contributions! Please see our Contributing Guide for details on how to set up your development environment.
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jnkn-0.0.0rc2.tar.gz.
File metadata
- Download URL: jnkn-0.0.0rc2.tar.gz
- Upload date:
- Size: 374.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.15 {"installer":{"name":"uv","version":"0.9.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
548bf6e38f44cd128923a9619be866b789b120030759ff3c2462cf4087c62ba4
|
|
| MD5 |
956adfb82f71bad0f53ba4eeb90cabc7
|
|
| BLAKE2b-256 |
8191246fc6739db9eb9d582f23ff923117d270129d213744b21acd6ddf134301
|
File details
Details for the file jnkn-0.0.0rc2-py3-none-any.whl.
File metadata
- Download URL: jnkn-0.0.0rc2-py3-none-any.whl
- Upload date:
- Size: 175.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.15 {"installer":{"name":"uv","version":"0.9.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
551d35a5f36e4cabd667440e8bfa45d836965036c4905910a0013788603553f7
|
|
| MD5 |
12a914cc177bfdf1f1525e8befc8778d
|
|
| BLAKE2b-256 |
72113cb5077f6de823d160498bf088bbd31869315187cf92d291b4cc6b9477e0
|