tacet (Python)
Python bindings for Tacet: check a TypeScript frontend against a Spring Boot API and see what an API, file or field change would affect, plus ready-made tools for FastMCP.
The package drives the Tacet CLI (--format json), so the machine running it needs Node.js 22.13+
(and Java 17+ for extract_backend). Point it at the CLI with TACET_CLI or put tacet on PATH.
from tacet import Tacet
lens = Tacet(index=".tacet/index.db", frontend_dir="./frontend", backend_dir="./backend")
lens.index_frontend()
lens.extract_backend()
report = lens.check(changed_since="origin/main") # PASS / WARNING / FAIL + issues with file:line
lens.impact_of_api("GET /users/{id}", graph="mermaid")
lens.page_apis(api="GET /users/{id}") # which pages use this API, and through what
lens.impact_of_file("src/api/user.ts")
lens.impact_of_field("UserResponse.name")
FastMCP
from fastmcp import FastMCP
from tacet.fastmcp import register_tools
mcp = FastMCP("my-server")
register_tools(mcp, frontend_dir="./frontend", backend_dir="./backend", prefix="tacet_")
mcp.run()
Tools: index_frontend, extract_backend, check_contract, impact_of_api, impact_of_file,
impact_of_field, search, impact_summary, render_graph, page_apis, ontology.
Tests
npm run build && npm run build:jar # from the repository root
uv run --group dev pytest
Metadata
Release files for tacet-api 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| tacet_api-0.1.1.tar.gz | 13.8 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tacet_api-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 27.7 kB
Release files / tacet_api-0.1.1.tar.gz
| Download URL | tacet_api-0.1.1.tar.gz |
|---|---|
| Size | 13.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4633f6bbd81ee517cd51e7f2b27b8a9f0fb8210833552ea589d625c3476f0e4a
|
|
BLAKE2b-256 checksum How to use checksums |
3baaba30078fdfc9507affc8c1b58c7e3b54a5ced8045365d8f3d0a35a6a00e3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / tacet_api-0.1.1-py3-none-any.whl
| Download URL | tacet_api-0.1.1-py3-none-any.whl |
|---|---|
| Size | 13.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6e8f5a659d20bfb336764bf67de8bf5967b3a44a24353ea89d8b1292b3e47f07
|
|
BLAKE2b-256 checksum How to use checksums |
54b24f817fb38e6da404523d4e523e8ff8f3d6296897d0107b719258e77870a0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Security for tacet-api 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.