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.1.tar.gz (672.1 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.1-cp39-abi3-win_amd64.whl (10.4 MB view details)

Uploaded CPython 3.9+Windows x86-64

jin_monitor-1.1.1-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.1-cp39-abi3-macosx_11_0_arm64.whl (11.0 MB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

jin_monitor-1.1.1-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.1.tar.gz.

File metadata

  • Download URL: jin_monitor-1.1.1.tar.gz
  • Upload date:
  • Size: 672.1 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.1.tar.gz
Algorithm Hash digest
SHA256 146f6e4f2dfa5d2abea345c96f4efdc9cc46cc350338847f9429da7c114715db
MD5 ecb8b3f42a2c9bce54fbdf02185b288e
BLAKE2b-256 163c7fb66bdc59d004e726109da666399f063fb2ba083e460e2481fdcf0f66c7

See more details on using hashes here.

Provenance

The following attestation bundles were made for jin_monitor-1.1.1.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.1-cp39-abi3-win_amd64.whl.

File metadata

  • Download URL: jin_monitor-1.1.1-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.1-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 cf5b2c5456574f7a5337c4d6f1efff5aab765b901b39bd7ac8766962ce041756
MD5 8867d7d27992bc2caabd092911428591
BLAKE2b-256 1edd1983ba784c73dd83a022a15baf75283754de7cab18f702e9d1e8a4dc5551

See more details on using hashes here.

Provenance

The following attestation bundles were made for jin_monitor-1.1.1-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.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for jin_monitor-1.1.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6e283b50ad62e06f5b29d8a2247a78add6d8ab3bd4f0b97ead5a1d2328dbfd44
MD5 8391b219c84dcfd70dc1a891ce08d6cb
BLAKE2b-256 4b635720d275e98a412ab3568257e6afc4d48821c6b3aa855f7e23987ed05ab2

See more details on using hashes here.

Provenance

The following attestation bundles were made for jin_monitor-1.1.1-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.1-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for jin_monitor-1.1.1-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 88435f1fad97c998f646f1afc1233574eb372a75a2af7cd05f78a9bfa3d096f7
MD5 3e5344432c58fabc419ae31c51ab6087
BLAKE2b-256 ebdcdda93a3d0a3d2ebe704edeab894d7e040660053300cd53b643a4ce8d4b4e

See more details on using hashes here.

Provenance

The following attestation bundles were made for jin_monitor-1.1.1-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.1-cp39-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for jin_monitor-1.1.1-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 40a16c9f49151cb0b6927029873cf2f4b6e67c84d9a8c879b550410cffa3e2b2
MD5 66ddc471207f523353ea8606f3ac8f7c
BLAKE2b-256 0acbf883ddb6b8364d8c7f3c81ddcc17c4dc2238cd6a579c60b97a0de17164d3

See more details on using hashes here.

Provenance

The following attestation bundles were made for jin_monitor-1.1.1-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