Help & Documentation

Learn how to use StructureGram

Saving Diagram Versions

Creating a version captures a complete snapshot of your diagram's current state. This guide explains how to save versions and best practices for naming them.

How to Save a Version

Using the Versions Button

  1. Open your diagram (Ownership View or Family Tree)
  2. Click the Versions button in the toolbar (next to Save Layout)
  3. Select "Save Version" from the dropdown
  4. Enter a descriptive name for the version
  5. Click "Save Version"

The version is now saved and appears in the versions list.

Keyboard Shortcuts

Currently, versions must be created using the UI button. Regular Ctrl+S (Save Layout) does not create a version - it only saves the working copy.

Naming Your Versions

Good version names are:

  • Descriptive: Explain what's special about this configuration
  • Concise: Keep names short enough to scan quickly
  • Dated (optional): Include dates for time-based milestones
  • Purpose-focused: Describe why you saved this version

Naming Examples

Good names:

  • ✅ "Before Smith restructure"
  • ✅ "Final presentation layout"
  • ✅ "All beneficiaries visible"
  • ✅ "2024 year-end structure"
  • ✅ "Compact for printing"
  • ✅ "Original consultation draft"

Less helpful names:

  • ❌ "Version 1" (use timestamps, shown automatically)
  • ❌ "asdf" (not descriptive)
  • ❌ "Really really long explanation about what this version contains and why I saved it" (too verbose)

What Gets Saved?

Each version captures everything about your diagram:

Visual Layout

  • Node positions and sizes
  • Link routing and vertices
  • Link label positions
  • Viewport zoom and pan position
  • Legend position and visibility

Presentation

  • Hidden entities
  • Custom colors and styling
  • Layout engine selection
  • Routing algorithm settings

Scope Configuration

  • Which entities are included (entity filter/scope)
  • Active snapshot date or date range
  • Scope template reference (if applicable)

Important: Scope is Immutable

When you save a version, the list of entities is captured and frozen. If you later add or remove entities from your diagram, the saved version still shows its original entity list.

Example:

Current diagram: Companies A, B, C, D, E (5 entities)
→ Save version "Q1 Structure"
→ Add Company F to diagram (now 6 entities)
→ Version "Q1 Structure" still shows only A, B, C, D, E

This ensures versions are true historical snapshots.

Version Metadata

Each saved version includes:

  • Version name (what you entered)
  • Created timestamp (automatic)
  • Node count (how many entities)
  • Edge count (how many relationships)

This metadata helps you identify and compare versions at a glance.

What Doesn't Create a Version

The following actions do not create versions:

  • Pressing Ctrl+S (Save Layout) - updates working copy only
  • Auto-save functionality - not implemented
  • Duplicating a diagram - creates new diagram, not version
  • Making any changes to the canvas - you must explicitly save a version

Version Limit

Each diagram can store up to 15 versions. When you save a 16th version:

  1. The oldest version is automatically deleted
  2. Your new version is saved
  3. You receive no warning (automatic cleanup)

This ensures the system remains performant while giving you ample history.

Managing Your Version History

To stay within the 15-version limit:

  • Delete unused experimental versions
  • Keep milestone versions (presentations, finals, important states)
  • Use "Promote to Diagram" to preserve important versions permanently
  • Consider creating a new diagram if you need a major variant

After Saving a Version

Once saved:

  • The version appears in the versions list (newest first)
  • You continue editing the working copy
  • The version is immutable (cannot be edited or renamed)
  • You can restore, delete, or promote the version at any time

Your working copy remains unchanged - saving a version does not affect your current diagram state.

Dirty State and Versions

"Dirty" means you have unsaved changes in your working copy. Important behaviors:

  • Dirty: You've made changes since the last Save Layout (Ctrl+S)
  • Saving a version: Does NOT clear the dirty state
  • You can: Save a version of a dirty working copy
  • Result: The version captures your current canvas, but your working copy is still marked dirty until you Save Layout

This allows you to create experimental versions without affecting your saved working copy baseline.

Common Workflows

Experiment Safely

  1. Save Layout (Ctrl+S) to establish baseline
  2. Save Version "Before experiment"
  3. Make experimental changes
  4. If you like them: Save Layout (Ctrl+S)
  5. If you don't: Restore "Before experiment" version

Prepare Multiple Presentations

  1. Arrange diagram for detailed analysis
  2. Save Version "Detailed view"
  3. Hide some entities, simplify layout
  4. Save Version "Executive summary"
  5. Switch between them by restoring as needed

Track Structural Changes

  1. Current ownership structure displayed
  2. Save Version "2024-01 structure"
  3. Update entities in database (add companies, etc.)
  4. Rebuild diagram with new entities
  5. Save Version "2024-03 after merger"
  6. Restore old version to see historical structure

Troubleshooting

"I saved a version but don't see my recent changes"

  • You may have saved the working copy (Ctrl+S) after saving the version
  • The version captured the state at save time
  • Your working copy has moved on
  • This is expected behavior

"My version disappeared"

  • You hit the 15-version limit and the oldest was auto-deleted
  • Check if you saved 16+ versions
  • Use "Promote to Diagram" to preserve important versions permanently

"I want to rename a version"

  • Versions cannot be renamed (immutable by design)
  • Delete the version and create a new one with the correct name
  • Or use notes elsewhere to track version purposes

Next Steps