Skip to main content

evidentia-api

FastAPI REST server and bundled React web UI for Evidentia, the open-source GRC tool.

This package is not typically installed directly. The preferred way is via the [gui] extra on the meta-package:

uv tool install "evidentia[gui]"
# or
pip install "evidentia[gui]"

Then run:

evidentia serve
# -> FastAPI + React UI at http://127.0.0.1:8000

What's inside

  • FastAPI app (evidentia_api.app:app) — REST endpoints mirroring every CLI capability.
  • SPA — React/Vite/shadcn/ui frontend, bundled as static assets inside the wheel under evidentia_api/static/.
  • SSE streaming — long-running LLM calls (risk generate, explain) stream progress to the browser without blocking.

REST surface

Every endpoint is typed with Pydantic models reused from evidentia-core. All endpoints bind to 127.0.0.1 by default; --host 0.0.0.0 emits a security warning.

Method Path Purpose
GET /api/health Health probe
GET /api/version Evidentia version info
GET /api/doctor Diagnostic summary
POST /api/doctor/check-air-gap Air-gap validator
GET /api/config Read evidentia.yaml
PUT /api/config Write evidentia.yaml
GET /api/frameworks List all 95 bundled catalogs
GET /api/frameworks/{id} Framework detail
GET /api/frameworks/{id}/controls/{control_id} Single control
POST /api/gap/analyze Run GapAnalyzer, save to gap store
GET /api/gap/reports List saved reports
GET /api/gap/reports/{key} Load a saved report
POST /api/gap/diff Compute diff between two reports
POST /api/risk/generate SSE: per-gap risk statement generation
POST /api/explain/{framework}/{control_id} Plain-English control explanation
POST /api/init/wizard Generate starter YAML files
GET /api/llm-status LLM provider configuration state

Air-gapped mode

Running evidentia serve --offline wires the air-gap guard into every /api/* call. LLM features gracefully degrade with a pointer to Ollama. See docs/air-gapped.md.

Development

# From the repo root:
uv sync --all-packages
cd packages/evidentia-ui && npm install && npm run dev  # Vite dev server at :5173
# In another terminal:
evidentia serve --dev  # FastAPI at :8000 proxies /api/* to itself, / to Vite :5173

License

Apache-2.0 — see LICENSE.

Download files

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

Source Distribution

evidentia_api-0.11.2.tar.gz (2.4 MB view details)

Uploaded Source

Built Distribution

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

evidentia_api-0.11.2-py3-none-any.whl (2.4 MB view details)

Uploaded Python 3

File details

Details for the file evidentia_api-0.11.2.tar.gz.

File metadata

  • Download URL: evidentia_api-0.11.2.tar.gz
  • Upload date:
  • Size: 2.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for evidentia_api-0.11.2.tar.gz
Algorithm Hash digest
SHA256 cf7f6e484ebc2c81b1ea0e211378afcc45d72d4920669c63a3d181cff8e87a7f
MD5 ea2f174720f161f975749c027ee4679a
BLAKE2b-256 c7b90bb4e89222392f9617beaac9d32077bcfa74331c02daa7c30f5fc357483e

See more details on using hashes here.

Provenance

The following attestation bundles were made for evidentia_api-0.11.2.tar.gz:

Publisher: release.yml on Polycentric-Labs/evidentia

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

File details

Details for the file evidentia_api-0.11.2-py3-none-any.whl.

File metadata

  • Download URL: evidentia_api-0.11.2-py3-none-any.whl
  • Upload date:
  • Size: 2.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for evidentia_api-0.11.2-py3-none-any.whl
Algorithm Hash digest
SHA256 13b46e8b8b2b80ed31f254cb0dcc4cedbf4c39924524a664c73655a094b7304e
MD5 f3cb26b80f1194c068aa4f2d675a76e5
BLAKE2b-256 c1faa829d95b851d8aaac1d826d5553bb93bfa6239a26af16f68f6abc5ebbd03

See more details on using hashes here.

Provenance

The following attestation bundles were made for evidentia_api-0.11.2-py3-none-any.whl:

Publisher: release.yml on Polycentric-Labs/evidentia

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

Release history Release notifications | RSS feed

0.12.1

2 files

0.12.0

2 files

This release

0.11.2 This release

2 files

0.11.0

2 files

0.10.18

2 files

0.10.17

2 files

0.10.16

2 files

0.10.13

2 files

0.10.12

2 files

0.10.11

2 files

0.10.10

2 files

0.10.9

2 files

0.10.8

2 files

0.10.7

2 files

0.10.6

2 files

0.10.5

2 files

0.10.4

2 files

0.10.3

2 files

0.10.2

2 files

0.10.1

2 files

0.10.0

2 files

0.9.9

2 files

0.9.8

2 files

0.9.7

2 files

0.9.6

2 files

0.9.5

2 files

0.9.4

2 files

0.9.3

2 files

0.9.2

2 files

0.9.1

2 files

0.9.0

2 files

0.8.7

2 files

0.8.6

2 files

0.8.5

2 files

0.8.4

2 files

0.8.3.1

2 files

0.8.3

2 files

0.8.2

2 files

0.8.1

2 files

0.8.0

2 files

0.7.16

2 files

0.7.15

2 files

0.7.14

2 files

0.7.13

2 files

0.7.12

2 files

0.7.11

2 files

0.7.10

2 files

0.7.9

2 files

0.7.8

2 files

0.7.7.1

2 files

0.7.7

2 files

0.7.6

2 files

0.7.5

2 files

0.7.4

2 files

0.7.3

2 files

0.7.2

2 files

0.7.1

2 files

0.7.0

2 files

0.6.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page