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

Uploaded CPython 3.9+Windows x86-64

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

Uploaded CPython 3.9+macOS 11.0+ ARM64

jin_monitor-1.1.2-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.2.tar.gz.

File metadata

  • Download URL: jin_monitor-1.1.2.tar.gz
  • Upload date:
  • Size: 672.9 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.2.tar.gz
Algorithm Hash digest
SHA256 62af1af526d1656dec6cf1ddae24d87fb08789f6929048fd991df20692ed0454
MD5 215077a7645a4e1bfc09456222177f37
BLAKE2b-256 da6ff3b553dcc1cffc158fc4992ef772d87d39f73883279778233cf7709f2215

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: jin_monitor-1.1.2-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.2-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 6f01682d10492e7af28ff177cfd71d7e6fb0ca16013021c46f162a391aa4cdfe
MD5 11f09b4611f6e4057cd456021aea0c7a
BLAKE2b-256 e49c5bb79a8a189ee1ca05fb123fe4aca3fae4608001be057e56621a30a9abf8

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for jin_monitor-1.1.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f4bc91ba049b810c6451a0c5e50db93ec8c9ab5a9022fdc1d259fe64a841c33f
MD5 7c2e4eb81efea7fdcb928d4bbe2f67a0
BLAKE2b-256 1b4a3017a90b8b039d3d8cc09816125590f769ac5af2529dd3c30035d461453b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for jin_monitor-1.1.2-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f4bc7af04dce8efb24749d428d91e66eb6f83b4e46b79c79fb226bc3270a0246
MD5 8e5b39a400c44ab0a540095656b459d5
BLAKE2b-256 3350c20a8c028a63cdc4485b43d2751f7469aafd614a740e9a5cffe57e6d4535

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for jin_monitor-1.1.2-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 186fac152482c81341a1c3b3fc432f5d40c2da8c9f2ca8899a6e1b80a258db93
MD5 ee8e688fe4aea8ae0e3492af4f02aaa1
BLAKE2b-256 f1903821370168a8cdbe96c2fcd2851b808a530cb1b5cf4692ce42a8b729575c

See more details on using hashes here.

Provenance

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