Skip to content

Siddardth7/quality-platform

Repository files navigation

Quality Platform

CI Open in Streamlit Python 3.11 Built with uv Release

Integrated manufacturing quality platform — FMEA, SPC, and Control Plan tools over a shared core, aligned with the AIAG / IATF-16949 core quality toolset.

Why: the AIAG core quality tools are normally scattered across disconnected spreadsheets and one-off apps. This platform brings them under one URL, one theme, and one quality bar — risk analysis (FMEA) and process control (SPC) side by side, sharing a typed core.

Shared by both tools: a single quality_core/io library (covered at 100%, CI-gated) owns CSV/Excel/PDF export and validated CSV/Excel ingest — written once and reused across FMEA and SPC, so formula-injection escaping and friendly upload validation are guaranteed identical in both.

🔗 Live demo: https://quality-platform-nplyhc6rvsd3bfw6q9vvkd.streamlit.app/ — one URL, Home + FMEA + the three SPC workflows.

This is a monorepo. Two previously standalone apps now live here with their full commit history preserved (the histories are part of the engineering story):

App Path What it does
FMEA Risk Analyzer apps/fmea/ Failure Mode & Effects Analysis — RPN / AIAG-VDA Action Priority, exports
Manufacturing SPC Dashboard apps/spc/ Statistical Process Control — control charts (incl. c-chart), capability with a stability gate, live simulation

Migrated from the standalone repos fmea-risk-analyzer and manufacturing-spc-dashboard, which are now archived → moved here.

Run an app

Each app still runs unchanged from its own directory:

cd apps/fmea && streamlit run app.py
cd apps/spc  && streamlit run app.py

Unified shell

Both apps are also mounted under one st.navigation shell — a single URL with a landing page, FMEA, and the three SPC workflows:

uv run streamlit run app.py

Repository layout

app.py            # unified platform shell (st.navigation)
shell/            # landing page + shared chrome
packages/
  quality-core/   # shared schema, IO, and theme
apps/
  fmea/   # FMEA Risk Analyzer (full original history)
  spc/    # Manufacturing SPC Dashboard (full original history)

Development & CI

The whole workspace shares one quality bar (ruff.toml, mypy.ini, pytest config in pyproject.toml). The gate runs locally and in CI:

uv sync                 # install workspace + dev tools (locked)
uv run ruff check .     # lint
uv run mypy             # type-check
uv run pytest --cov     # tests + coverage across packages + apps

CI (.github/workflows/ci.yml) runs exactly this gate on every push and pull request to main, on Python 3.11 via astral-sh/setup-uv. It also enforces a dedicated SPC coverage gate — the testable SPC surface (engine + simulation + visualizer) must stay ≥95% covered.

Branch protection: main should require the CI / gate status check to pass before merging (GitHub → Settings → Branches → add a rule for main, require status checks). This makes the gate mandatory — the protection SPC never had as a standalone repo.

About

Integrated manufacturing quality platform — FMEA, SPC, and Control Plan tools over a shared core (AIAG/IATF-16949 core tools).

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages