Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Evaluation of other open-source PLM systems

Evaluated on 2026-11-03 before TeamCraft was extended beyond its first milestone. Points that could not be verified are marked [unverified].

Overview

TurboPLMOdooPLMDocDokuPLMGitPLM
Whatweb PLM for hardware teams36+ PLM modules inside the Odoo ERPJava EE PLMGo CLI/TUI for CSV BOMs in Git
LicenseAGPL-3.0 (FSL-1.1-MIT until 2026-08-01)core LGPL-3, modules AGPL-3; CAD client proprietaryAGPL-3.0Apache-2.0
StackReact, Node/Express, Prisma, PostgreSQL, three.js, occt-import-jsPython, Odoo 19, PostgreSQLJava 8 / Java EE 8, Payara, PostgreSQL, Elasticsearch, KafkaGo, CSV, YAML
Activitypre-1.0, single vendoractive since 2017dormant (main repo last pushed 2021)v0.10.1 (2026-09)
HostingSaaS or Docker Compose (4 services)full Odoo instance11 containerslocal tool

Feature coverage (Y / P = partial / N)

FeatureTurboPLMOdooPLMDocDokuGitPLM
Roles + group access controlPPYN
Check-in/check-out lockingYY (proprietary CAD client)YN
File versions / rollbackPPPY (Git)
Audit logPPPY (Git)
Metadata + full-text searchP (metadata only)PY (incl. file contents)P
STEP/STL web previewY (browser + server conversion to glTF)Y (server conversion)Y (FreeCAD conversion)N
Lifecycle with transition rulesYYPN
Change propagation to dependentsP (release gate)PY (changelog to verify)P
Review/approval + notificationsYPYP
Multi-level BOM, where-used, exportYYPP
ECR/ECO with impact analysisY (where-used only)PPN
API / webhooks / SSOREST + webhooks, no OIDC/LDAPXML-RPC/REST, OIDC via OCA moduleREST, OIDC [unverified]Git

Why TeamCraft is its own system

  • TurboPLM has the closest feature set but is young, from a single vendor that already changed the license once, without versioned migrations and without OIDC.
  • OdooPLM is mature but requires a full Odoo ERP and a proprietary CAD client – heavy to operate for a small team.
  • DocDokuPLM has the best data model but is dormant on old Java, Elasticsearch and Kafka versions across 11 containers.
  • GitPLM targets electronics BOMs, not CAD data; it complements TeamCraft for KiCad projects.

TeamCraft therefore is a small, single-binary PLM: one process plus PostgreSQL, a pure-Rust build, and an MPL-2.0 licence that allows embedding.

Ideas adopted

IdeaSourceTeamCraft
Released revisions immutable, all revisions of a change released atomicallyTurboPLMimplemented
Admin can break a lock (audit-logged)TurboPLMimplemented
File versions within a revision (check-in = new version)DocDoku (master → revision → iteration)implemented
Assembly changelog: dependents flagged until acknowledgedDocDokuimplemented (change propagation)
Pack-and-go: an assembly with all files as ZIPOdooPLMimplemented
Server-side conversion of CAD files for the web previewTurboPLM, DocDokuimplemented, in pure Rust
Numbering masks per item typeDocDokuimplemented (per project group)
HMAC-signed webhooks with delivery historyTurboPLMplanned
KiCad HTTP library endpointGitPLMplanned

Sources

TurboPLM: github.com/horatiumm-creator/turboplm, turboplm.com · OdooPLM: github.com/OmniaGit/odooplm, github.com/OCA/server-auth · DocDokuPLM: github.com/docdoku/docdoku-plm, docdoku-plm-conversion-service, docdokuplm.com user guide 2.5 · GitPLM: github.com/git-plm/gitplm