Pack Spec

The FormsCAD pack format is open, public, and stable. A pack is just a folder — no SDK, no build step, no compiler. This is the working reference; the formal versioned spec moves to the docs site when it launches.

1 · Folder structure

A pack is a directory containing a manifest.json and the asset files it lists. Keep assets beside the manifest or in subfolders — paths in the manifest are relative to the manifest.

isa-pid-symbols/
  manifest.json
  symbols/
    ft-field.svg
    pt-field.svg
  thumb.svg            (optional preview, 16:9)

2 · manifest.json

UTF-8 JSON. Required: name, version (semver), category, compat, items. Optional: author, description, thumb, license.

{
  "name": "ISA P&ID Symbols",
  "version": "1.0.0",
  "category": "symbols",
  "compat": ["forms-2d"],
  "author": "your-name",
  "description": "Full ISA 5.1 instrument symbol set.",
  "license": "CC-BY-4.0",
  "thumb": "thumb.svg",
  "items": [
    {
      "id": "ft-field",
      "label": "Flow Transmitter (field)",
      "file": "symbols/ft-field.svg",
      "tags": ["instrument", "flow", "field"]
    }
  ]
}

3 · Field reference

4 · Asset rules

5 · Install

Drop the pack folder into Forms 2D's assets/ directory. The directory is watched — items appear in the palette automatically, no restart.

6 · Versioning & stability

The manifest schema is versioned by this format, not by your pack. Additive fields only — a newer Forms 2D will keep reading older manifests. Bump your pack's own version (semver) when you change its contents.

This is the working reference. The formal, version-pinned spec will live at docs.formscad.com/pack-spec when the documentation site launches. Questions: support@formscad.com.