Features Workflows Entities Install GitHub
Open Source • MIT License

Tessera
Development Toolkit

A powerful CLI toolkit for managing product development artifacts as plain-text YAML files. Version control your requirements, risks, tests, BOMs, and more with full traceability.

# Initialize a new TDT project
$ tdt init
✓ Initialized TDT project

# Create your first requirement
$ tdt req new -t input --title "Temp"
✓ Created requirement REQ@1

# List all requirements
$ tdt req list
Plain-Text YAML Files
JSON Schema Validation
Full Traceability Matrices
ULID-Based Unique IDs
FMEA Risk Management
Tolerance Analysis
BOM Management
Beautiful CLI Output
Plain-Text YAML Files
JSON Schema Validation
Full Traceability Matrices
ULID-Based Unique IDs
FMEA Risk Management
Tolerance Analysis
BOM Management
Beautiful CLI Output

Built for Engineering Teams

Everything you need to manage complex product development in plain text.

Plain-Text YAML

Human-readable files that diff beautifully in git. No proprietary formats, no vendor lock-in.

Schema Validation

JSON Schema validation with beautiful error messages, line numbers, and context.

Full Traceability

Link requirements to tests, risks to mitigations. Generate traceability matrices instantly.

FMEA Risk Management

Built-in FMEA with severity, occurrence, detection ratings. Auto-calculate RPN.

Short ID Aliases

Use REQ@1, RISK@2 instead of 26-character ULIDs. Cross-entity linking that just works.

Tolerance Analysis

Worst-case, RSS, and Monte Carlo analysis. Built for mechanical engineering.

More Than Requirements

TDT powers your entire product lifecycle with specialized engineering tools.

Tolerance Stackup Analysis

Define features on components, create mates, and run worst-case, RSS, and Monte Carlo analysis on tolerance chains.

# Create feature on component
$ tdt feat new -c CMP@1 -t hole
✓ Created feature FEAT@1

# Run Monte Carlo analysis
$ tdt tol analyze TOL@1
✓ Analysis complete

   Worst-Case: 0.87-1.18 pass
   RSS: Cpk 4.56
   Monte Carlo: 100% yield

FMEA Risk Management

Create design and process risks with severity, occurrence, and detection ratings. Auto-calculate RPN and track mitigations.

# Create a risk with FMEA ratings
$ tdt risk new --title "Overheating" \
    --severity 8 --occurrence 4
✓ Created risk RISK@1
   RPN: 160 (high)

# View risks sorted by RPN
$ tdt risk list --by-rpn
SHORT   TITLE          LEVEL   RPN
RISK@1  Overheating    high    160
RISK@2  Seal Issue     medium   72

Manufacturing Quality Loop

Define processes, control plans, work instructions, and track NCRs back to CAPAs for continuous improvement.

# Create process
$ tdt proc new -t "CNC Mill"
✓ Created process PROC@1

# Add SPC control
$ tdt ctrl new -t "Bore SPC" --critical
✓ Created control CTRL@1 [CTQ]

# Log non-conformance
$ tdt ncr new -t "Bore OOT" -S major
✓ Created NCR NCR@1

Full Traceability

Link requirements to tests, risks to mitigations. Generate coverage reports and find orphaned entities.

# Link requirement to test
$ tdt link add REQ@1 TEST@1 -t verified_by
✓ Added link

# Check verification coverage
$ tdt trace coverage
Coverage: 92% (22/24 verified)

Complete Coverage

Every artifact type you need for professional product development.

Up and Running in Minutes

Install TDT with a single command and initialize your first project. Works on macOS, Linux, and Windows.

1

Install with Cargo

Requires Rust toolchain installed

2

Initialize a Project

Creates directory structure and config

3

Start Creating

Add requirements, risks, tests, and more

Terminal
# Install from crates.io
$ cargo install tdt

# Initialize your project
$ tdt init
 Initialized TDT project

# Create requirement
$ tdt req new -t input --title "Temp"
 Created REQ@1

# Validate
$ tdt validate
 All files valid

See It in Action

A glimpse of TDT's powerful command-line interface.

tdt -- ~/my-product
tdt req list
@ TYPE TITLE STATUS REQ@1 input Temp Range approved REQ@2 input Shock Resist approved REQ@3 output Thermal Spec draft 3 requirement(s)
tdt risk list --by-rpn
@ TYPE TITLE RPN RISK@1 design Thermal 280 RISK@2 process Solder 120 RISK@3 design EMI 48 3 risk(s)
tdt trace from REQ@1
REQ@1 Temp Range ├── satisfied_by → REQ@3 ├── verified_by → TEST@1 └── related_to → RISK@1
tdt validate
All 4 files valid
_