Connect any CAD tool to T2DPLM

An open, vendor-neutral file format, a ready-made prompt, and a validator. Together they let you build a small helper plugin for the CAD tool you already own, so T2DPLM can track your design changes automatically.

Your CAD tool. Your API. Your plugin.

Engineering teams use every kind of CAD tool, and almost all of them offer a scripting or programming interface. We deliberately do not care which tool you use or how its API looks. We care about two things only: you legally own the tool, and you are legally allowed to use its API to write helper plugins for your company's or your own use.

If that holds, you need just three files. One describes the format T2DPLM accepts. One is the prompt you give a code-generation assistant on your own licensed workstation, so it writes a plugin that conforms to that format. One verifies that everything went well. The plugin is built, compiled and run entirely on your own machine. We never receive, ship or touch code that calls a CAD vendor's API.

From your CAD tool to T2DPLM in four steps

1

Get the three files

Download the format specification, the implementation guide (the prompt) and the validator below.

2

Generate the plugin

On your licensed CAD workstation, give the specification and the guide to a code-generation assistant. It asks which tool and version you use, then maps your tool's official API to the format.

3

Run it on save

The plugin hooks your tool's save event, walks the design tree and writes one small JSON file per save into a watched folder. Some tools do not let plugins hook Save. In that case the plugin gets a custom key combination instead, which you press after saving.

4

Validate

Run the validator on the output and the eight acceptance tests from the guide. When they pass, T2DPLM can ingest your designs.

The three files

All three are released under the MIT License. Revision 2, 16 September 2026.

1 · Format Specification

The contract. Defines the JSON layout, every field, the two hard rules (stable identity, no noisy values), producer behaviour and the conformance tests. Contains no vendor code.

Markdown · T2DPLM_OCF_v1.0_Format_Specification.md
Download specification

2 · Implementation Guide & Prompt

The instructions for your code-generation assistant: what to ask, how to map your tool's API, and how to run the acceptance tests. Hand it over together with the specification.

Markdown · T2DPLM_OCF_v1.0_Implementation_Guide.md
Download guide

3 · Validator

A standalone Python 3 tool with no dependencies. Checks a file against the format, compares two saves, and ships with sample files and 36 automated tests.

ZIP · ocf-validator.zip
Download validator

License text: ocf/LICENSE

One small JSON file per save

The file describes the component tree of your design at the moment it is saved. T2DPLM compares it with earlier versions to find real design changes. Two rules matter above all:

Rule A · Stable identity

A component keeps the same id across saves for as long as it is unchanged, so moving or editing one part is never mistaken for a different part.

Rule B · No noisy values

Anything that changes on its own, such as timestamps and temporary paths, stays out of the component data, so an unchanged design looks unchanged.

{
  "meta": {
    "assemblyId": "demo-assembly-001", "assemblyName": "Demo", "savedAt": "2026-09-16T09:22:00Z",
    "sourcePath": "...", "cadTool": "YourTool", "toolVersion": "1.0.0"
  },
  "components": [
    {
      "id": "9f2c…", "partNumber": "BRK-100", "configuration": "", "parentId": null,
      "fileName": "bracket.part",
      "transform": { "position": { "x": 0, "y": 0, "z": 0 }, "rotation": { "x": 0, "y": 0, "z": 0 } },
      "properties": { "Material": "Steel" }, "suppressed": false, "virtual": false
    }
  ]
}

This is only an illustration. The Format Specification is the single source of truth.