Skip to main content

The Pre-Flight Impact Analysis Engine for Engineering Teams.

Project description

jnkn

The Pre-Flight Impact Analysis Engine for Engineering Teams.

PyPI version Documentation License: MIT

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jnkn-0.0.0rc3.tar.gz (336.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jnkn-0.0.0rc3-py3-none-any.whl (165.4 kB view details)

Uploaded Python 3

File details

Details for the file jnkn-0.0.0rc3.tar.gz.

File metadata

  • Download URL: jnkn-0.0.0rc3.tar.gz
  • Upload date:
  • Size: 336.1 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

Hashes for jnkn-0.0.0rc3.tar.gz
Algorithm Hash digest
SHA256 3d67729ade0003b5181ef50077da7abb5362a7d48017802fc2ab79a7b137956a
MD5 b73aa235bbfa8dc7c8ed2d2bafc5a468
BLAKE2b-256 52ecf50b2ab9b30534fe90455d49afaa0e854531d66c8fa7a5e04ae35b9a32b9

See more details on using hashes here.

File details

Details for the file jnkn-0.0.0rc3-py3-none-any.whl.

File metadata

  • Download URL: jnkn-0.0.0rc3-py3-none-any.whl
  • Upload date:
  • Size: 165.4 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

Hashes for jnkn-0.0.0rc3-py3-none-any.whl
Algorithm Hash digest
SHA256 64a1c8b1fd71e1e3611cd5b08ea0236ac7c08c45ff1a4a2a7573d10b59da74ac
MD5 2e8fd574ce039b5954967aedad50e126
BLAKE2b-256 c137154d4e0bb9978061701c8e52972a2c14fb010aef47948626d13749bdd8a3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page