Tags

Cross-cutting labels for grouping objects across types — color-coded, categorized, and searchable.

Tags

Tags are short, color-coded labels you attach to objects to group them across type boundaries. Where object types answer “what is this?”, tags answer “what does this share with these other things?” — they’re the right tool for crosscutting concerns: criticality, ownership domains, project scope, regulatory tags, anything you’d otherwise track in a spreadsheet.

Where tags live

DesignFoundry has a top-level Tags entry in the sidebar (under Modeling). Two surfaces:

  • /tags — the catalog: every tag defined in the project, with usage counts.
  • /tags/[id] — the per-tag detail: tag definition (name, color, description, category) plus the list of every object carrying it.

Tag definition

Each tag has:

FieldNotes
NameShort, lowercase preferred. Unique within a project.
DescriptionOptional one-liner shown on hover and in the catalog.
ColorOne of 12 preset swatches: blue, green, red, purple, amber, cyan, pink, teal, violet, orange, slate, gray.
CategoryOptional grouping (e.g. “Compliance”, “Lifecycle”, “Domain”) — used for filtering the catalog.
ActiveInactive tags don’t appear in pickers but stay attached to objects (and stay in the catalog with an inactive badge).

The catalog shows usage count alongside each tag — handy for spotting tags nobody actually applies.

Applying tags to objects

From any object’s Object Detail page, the Tags field is a multi-select. Start typing to filter the dropdown; pick existing tags or click Create new tag to define one inline.

A handful of feature surfaces let you bulk-apply tags:

  • Inventory — multi-select rows in the list view, then Bulk → Add tag.
  • Import wizard — map a CSV column to tags and the importer creates missing tags on the fly.
  • Diagram — select multiple nodes on the canvas, right-click, Tag selection.

Filtering by tag

Tags become first-class filters everywhere object lists appear:

  • The Inventory filter bar has a Tags multi-select that narrows the list.
  • The Search Page (/search?tags=…) supports a comma-separated tags filter in the URL.
  • Dashboards and Reports (when shipped) accept tags as a parameter on most components.
  • The Cmd-K palette treats tag:critical syntax as a filter (e.g. customer tag:critical).

Per-tag detail page

Click any tag in the catalog (or any tag chip on an object) to open /tags/<id>:

  • Edit form at the top: change name, description, color, category, or deactivate.
  • Tagged objects list below: every object currently carrying this tag, paginated, with quick links into the inventory.
  • Delete — moves the tag to a confirmation modal; deletion removes the tag from every object that carried it (audit-logged).

Tags vs. categories vs. extensions

Three overlapping mechanisms exist for organizing objects. Pick by intent:

If you want…Use
A free-form, multi-valued label that crosscuts typesTags
Type-specific structured data (e.g. Application has tier, criticality)Extensions
Hierarchical grouping with a single parent per objectObject type + parent relationship

Tags are intentionally lightweight — minimum schema, maximum flexibility. If you find yourself encoding structure in tag names (“status:active”, “tier:1”), promote it to an extension field.

Permissions

Creating, renaming, recoloring, and deleting tags requires Editor or Admin role on the project. Viewers can see tags and filter by them but can’t define new ones.