Skip to main content

Rust-first data quality monitoring middleware for FastAPI

Project description

Jin

SaaS-Grade Observability & Reconciliation for FastAPI Data Products

Jin is a Rust-first, drop-in reconciliation engine that actively monitors internal data quality natively inside your FastAPI applications. Designed for engineers and tailored for Product Owners (POs).

The Killer App: Deep-Nested Reconciliation

Traditional data quality reconciliation requires tedious, custom data pipeline scripts that flatten complex JSON structures. Jin solves this instantly.

With our fast, persistent Rust core, Jin automatically traverses deeply nested Pydantic responses (e.g., catalog.categories[].products[].stats.revenue), and accurately reconciles those metrics against flat reference/CSV files provided by your business teams.

No custom validation scripts. No pipeline bloat. Just point Jin to your endpoint, map the grain in the UI, and let the engine do the work.

Features

  • Zero-Friction Integration: 30-second install via pip or uv. Drop a single middleware into your FastAPI app and go.
  • PO Wizard Setup: The Jin Dashboard helps non-technical Product Owners map JSON paths, define metric tolerances, and upload CSV ground truth.
  • Field Aliasing (Coming Soon): Shield business users from JSON paths by mapping catalog.categories[].products[].sku to simple aliases like "Product SKU".
  • Executive Reporting: One-click generation of beautifully formatted, executive-ready Markdown and CSV Data Quality reports.
  • Built-in Incident Workflow: Track "Match" or "Mismatch" issues with full lifecycle support (Assign, Snooze, Resolve, Suppress).

Start Here

1. Install (Pre-compiled wheels ensure a blazingly fast install):

uv add jin-monitor
# or
pip install jin-monitor

2. Add the middleware to your app:

from fastapi import FastAPI
from jin import JinMiddleware

app = FastAPI()
app.add_middleware(
    JinMiddleware, 
    db_path="./jin.duckdb", 
    global_threshold=10.0
)

3. Launch your app and open the Data Quality Dashboard:

http://127.0.0.1:8000/jin

Documentation

Read the short docs in this order to become a Jin power user:

  1. Why Jin (Vision)
  2. Getting Started
  3. Configuration Guide
  4. Data Shape Guide
  5. Incident Workflow
  6. CLI Operations

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

jin_monitor-1.1.0.tar.gz (670.8 kB view details)

Uploaded Source

Built Distributions

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

jin_monitor-1.1.0-cp39-abi3-win_amd64.whl (10.4 MB view details)

Uploaded CPython 3.9+Windows x86-64

jin_monitor-1.1.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.2 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ x86-64

jin_monitor-1.1.0-cp39-abi3-macosx_11_0_arm64.whl (11.0 MB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

jin_monitor-1.1.0-cp39-abi3-macosx_10_12_x86_64.whl (12.3 MB view details)

Uploaded CPython 3.9+macOS 10.12+ x86-64

File details

Details for the file jin_monitor-1.1.0.tar.gz.

File metadata

  • Download URL: jin_monitor-1.1.0.tar.gz
  • Upload date:
  • Size: 670.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for jin_monitor-1.1.0.tar.gz
Algorithm Hash digest
SHA256 960147949a9eb3bd7c566f8470ea15ffb5ffca7853880dad6faac7e476357128
MD5 e0c76eb94d3879fab7db49e97ad208cd
BLAKE2b-256 607b640341c3edf92f9cc8e0cce1a83b7405a50089786166d39b4912dfccbd0b

See more details on using hashes here.

Provenance

The following attestation bundles were made for jin_monitor-1.1.0.tar.gz:

Publisher: publish.yml on amit-devb/jin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jin_monitor-1.1.0-cp39-abi3-win_amd64.whl.

File metadata

  • Download URL: jin_monitor-1.1.0-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 10.4 MB
  • Tags: CPython 3.9+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for jin_monitor-1.1.0-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 0654ba28a9180dad37cd08a702cd2784314780232f2ae323a61395b053fba11b
MD5 b543d00745936aca3179c11e70f86c73
BLAKE2b-256 30b68c514944ab8d1cc3705925224d8f59c826b446c52c351b9d7dfbb1af618c

See more details on using hashes here.

Provenance

The following attestation bundles were made for jin_monitor-1.1.0-cp39-abi3-win_amd64.whl:

Publisher: publish.yml on amit-devb/jin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jin_monitor-1.1.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for jin_monitor-1.1.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 708874fb5c927b42c2124183045c1957339d6c44e5a94a3e6a07e5cfc231ca8e
MD5 4d093fdd44cfd3c401d648214adbb12b
BLAKE2b-256 5da53b171c1efee9a279559d83f2e320e9769eb12718e096efee4949afc6579c

See more details on using hashes here.

Provenance

The following attestation bundles were made for jin_monitor-1.1.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on amit-devb/jin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jin_monitor-1.1.0-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for jin_monitor-1.1.0-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fe8b0556014cfd183178e4760f214bd4a541218aeaaee3e0fb95f5a0219ac7d7
MD5 69bb4d3035ad2b0122b0a3740cf1af4b
BLAKE2b-256 4758bd516b77ede06794bd7dedaf87dc9e19224d93f036064976bc93a3fc5828

See more details on using hashes here.

Provenance

The following attestation bundles were made for jin_monitor-1.1.0-cp39-abi3-macosx_11_0_arm64.whl:

Publisher: publish.yml on amit-devb/jin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jin_monitor-1.1.0-cp39-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for jin_monitor-1.1.0-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b30b26e64bf523124613eed6039d76249e9fd24b689efd1bdd0d9086db41bb8d
MD5 5570c1d9a08f254671e361f6ad550861
BLAKE2b-256 18b61fa6beded161e8a1efcb2136eb45dfeff721a42e75021fb1a52215bb605c

See more details on using hashes here.

Provenance

The following attestation bundles were made for jin_monitor-1.1.0-cp39-abi3-macosx_10_12_x86_64.whl:

Publisher: publish.yml on amit-devb/jin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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