Back to Diagram Animation Editor

Documentation

user guide

Diagram Animation Editor - User Guide

A comprehensive guide to creating animated architecture diagrams and system visualizations.

Diagram Animation Editor

Table of Contents


Getting Started

Prerequisites

  • Node.js 18+
  • npm or yarn

Installation

bash
git clone https://github.com/jonathanleahy/diagram-animation.git
cd diagram-animation/frontend
npm install
npm run dev

The application opens at http://localhost:3001.

First Launch

When you first open the app, you'll see the landing screen with options to:

  • Create New Diagram - Start with a blank canvas
  • Import Project - Load a previously exported JSON file
  • Load Sample Diagram - Try a pre-built example with animations
Landing Page


Interface Overview

The editor has four main areas:

Editor Interface

1. Toolbar (Top)

The toolbar provides quick access to:

ButtonFunction
Select (V)Select and move nodes
Pan (H)Pan the camera
Rectangle (R)Draw a rectangle
Circle (C)Draw a circle
Diamond (D)Draw a diamond
Callout (T)Add a text callout
Edge (E)Draw a connection between nodes
2D/3DToggle between top-down and isometric view
GridToggle the background grid
ExportSave project to JSON
ImportLoad project from JSON
PresentEnter presentation mode
ThemeToggle light/dark mode

2. Sidebar (Left)

The sidebar contains:

  • Architecture Templates - Pre-built diagram templates
  • Basic Shapes - Rectangle, Circle, Diamond, Callout
  • AWS / Cloud Services - Cloud architecture shapes (User, Cloud, CDN, Load Balancer, API Gateway, Lambda, Server, Container, DynamoDB, Storage, Queue, SNS)
  • Pages - Manage presentation pages with descriptions

3. Properties Panel (Right)

Select any node or edge to edit its properties:

  • Label text
  • Fill and stroke colors
  • Size and position
  • Opacity
  • Animation presets

4. Timeline (Bottom)

The timeline panel shows all animation tracks and keyframes:

  • Transport controls (play, pause, stop, loop)
  • Playback speed control
  • Zoom-adjustable timeline view
  • Color-coded tracks by property type
  • Keyframe editing with drag support

Creating Diagrams

Adding Shapes

From the sidebar: Click any shape in the Basic Shapes or AWS / Cloud Services section to add it to the canvas.

From the toolbar: Select a drawing tool (Rectangle, Circle, Diamond, Callout) then click on the canvas to place it.

Connecting Nodes

  • Select the Edge tool (E) from the toolbar
  • Click on the source node's anchor point (shown as circles on hover)
  • Click on the target node's anchor point
  • The edge will be created with a bezier curve
  • Editing Nodes

    • Move: Click and drag any node with the Select tool
    • Resize: Drag the edge handles of a selected node
    • Edit label: Select the node and modify the label in the Properties panel
    • Style: Change colors, opacity, and stroke in the Properties panel
    • Delete: Select and press Delete or Backspace

    Right-Click Context Menu

    Right-click on the canvas to access:

    • Copy, Cut, Paste
    • Duplicate selection
    • Delete selected items

    Using Templates

    Templates are pre-built architecture diagrams with animations already configured.

    Sidebar Templates

    Loading a Template

  • Click Architecture Templates in the sidebar to expand the list
  • Click on any template to load it
  • Confirm the dialog (this replaces your current diagram)
  • Available Templates

    #### Simple Templates

    TemplateDescription
    Basic Web AppBrowser to server to database flow
    Load BalancerTraffic distribution to multiple servers
    Cache PatternCache-aside pattern with database fallback
    Pub/SubPublisher-subscriber messaging pattern
    API GatewayREST API routing to microservices
    ServerlessLambda-based serverless architecture
    #### Advanced Templates

    TemplateDescription
    Saga PatternDistributed transactions across microservices
    Message QueueEvent-driven architecture with queues
    Database TransactionsACID compliance and replication
    Event SourcingCQRS pattern with event store
    MicroservicesService mesh with sidecar proxies
    Circuit BreakerResilience pattern for service calls
    Shadow ProxyBlue-green deployment migration
    CI/CD PipelineContinuous integration and deployment
    Kubernetes ClusterContainer orchestration
    Event-Driven ArchitectureFull event-driven system
    Data PipelineETL/ELT data processing flow

    Template Examples

    API Gateway Pattern: API Gateway

    Saga Pattern (Distributed Transactions): Saga Pattern

    Microservices (Service Mesh): Microservices

    CI/CD Pipeline: CI/CD Pipeline

    Data Pipeline (ETL/ELT): Data Pipeline

    3D Isometric Template Gallery

    All templates can be viewed in 3D isometric mode for a more visual, presentation-ready look.

    Saga Pattern (3D): Saga Pattern 3D

    Microservices (3D): Microservices 3D

    CI/CD Pipeline (3D): CI/CD Pipeline 3D

    Kubernetes Cluster (3D): Kubernetes 3D

    Data Pipeline (3D): Data Pipeline 3D

    Circuit Breaker (3D): Circuit Breaker 3D

    Message Queue (3D): Message Queue 3D

    Database Transactions (3D): Database Transactions 3D

    Event Sourcing (3D): Event Sourcing 3D

    Load Balancer (3D): Load Balancer 3D


    Animation System

    Animation Presets

    Open the Animation Templates modal with Ctrl+Shift+A (or Cmd+Shift+A on Mac).

    Animation Templates

    Presets are organized by category:

    #### Entrance Animations

    PresetDescription
    Fade InGradually appear from transparent
    Scale InGrow from zero to full size
    Slide InSlide in from the left
    Drop InFall in from above
    Pop InBounce in with elastic effect
    #### Emphasis Animations
    PresetDescription
    PulseScale up and back rhythmically
    ShakeRapid horizontal vibration
    GlowOpacity pulsing effect
    #### Exit Animations
    PresetDescription
    Fade OutGradually disappear
    Scale OutShrink to zero
    #### Flow Animations (Edges)
    PresetDescription
    Flow ProgressAnimate data flowing along an edge
    Flow PulseRepeated flow animation
    #### Sequence Animations (Multiple Elements)
    PresetDescription
    Cascade RevealElements appear one after another
    Simultaneous RevealAll elements appear at once
    Highlight PathSequential glow along a path

    Applying Animation Presets

  • Select one or more nodes/edges
  • Open Animation Templates (Ctrl+Shift+A)
  • Choose a preset from the categorized list
  • The animation tracks are added to the timeline
  • Adjust timing by dragging keyframes
  • Animatable Properties

    PropertyTypeDescription
    Position[x, y, z]Move elements across the canvas
    Opacity0-1Control transparency
    ScalenumberResize elements
    RotationdegreesRotate elements
    Fill Colorhex colorAnimate color changes
    Flow Progress0-1Animate edge data flow

    Easing Functions

    EasingDescription
    LinearConstant speed
    Ease InStart slow, finish fast
    Ease OutStart fast, finish slow
    Ease In-OutStart slow, speed up, finish slow

    Timeline Editor

    The timeline editor sits at the bottom of the screen and provides full control over animation timing.

    Transport Controls

    • Play/Pause (Space) - Start or stop playback
    • Stop - Return to beginning
    • Step Forward/Back - Move frame by frame
    • Loop - Toggle continuous looping
    • Speed - Adjust playback speed (0.25x to 4x)

    Working with Keyframes

    • Add keyframe: Right-click on a track at the desired time
    • Move keyframe: Drag a keyframe diamond along the timeline
    • Edit keyframe: Click a keyframe to edit its value and easing
    • Delete keyframe: Right-click and select "Delete Keyframe"
    • Select multiple: Ctrl+click to multi-select keyframes

    Track Management

    Each animation track appears as a row in the timeline:

    • Tracks are color-coded by property type (blue=position, green=opacity, yellow=scale, pink=rotation, purple=fillColor, cyan=flowProgress)
    • Expand/collapse tracks to see keyframe details
    • Delete tracks from the right-click context menu

    Zoom and Pan

    • Scroll to zoom in/out on the timeline
    • The time ruler shows seconds and frames
    • Drag the playhead (red line) to scrub through time

    Presentation Mode

    Presentation mode turns your diagram into an interactive, step-by-step walkthrough. It works in both 2D and 3D views.

    Presentation Mode

    3D Presentation Examples

    Presentations in 3D isometric view give a polished, professional look:

    Saga Pattern - 3D Presentation: Saga 3D Presentation

    Saga 3D Step 2

    Saga 3D Step 3

    CI/CD Pipeline - 3D Presentation: CI/CD 3D Presentation

    Microservices - 3D Presentation: Microservices 3D Presentation

    Setting Up Pages

    Before presenting, configure pages in the sidebar:

  • Click + Add in the Pages section
  • Name each page (e.g., "Step 1: User Request")
  • Set time ranges for each page
  • Add descriptions explaining what happens at each stage
  • Starting a Presentation

  • Click the green Present button in the toolbar (or press F5)
  • The UI elements hide and the presentation overlay appears
  • A description card shows the current page's content
  • Navigation

    ControlAction
    Space / Enter / ClickAdvance to next step
    Left ArrowGo to previous page
    Right ArrowGo to next page
    MToggle step/continuous mode
    ESCExit presentation

    Play Modes

    • Step Mode (default): Pauses at each page boundary, waits for you to click/press Space
    • Continuous Mode: Plays through all pages automatically without stopping

    Presentation Overlay

    The bottom bar shows:

    • Current page name
    • Play mode indicator (Step Mode / Continuous)
    • Status message ("Ready for next step" / "Playing...")
    • Page counter (e.g., "3 / 7")
    • Navigation arrows
    • Close button

    Import & Export

    Exporting a Project

  • Click Export in the toolbar
  • A JSON file downloads with your complete project data
  • The file includes all nodes, edges, animations, pages, and settings
  • Importing a Project

  • Click Import in the toolbar
  • Select a previously exported JSON file
  • The project loads with all diagrams and animations intact
  • File Format

    Projects are saved as JSON with this structure:

    • nodes - All diagram nodes with positions, labels, and styles
    • edges - Connections between nodes
    • tracks - Animation tracks with keyframes
    • pages - Presentation pages with time ranges and descriptions
    • settings - View mode, grid, and other preferences

    Keyboard Shortcuts

    Keyboard Shortcuts

    Tools

    KeyAction
    VSelect tool
    RRectangle tool
    CCircle tool
    DDiamond tool
    TCallout tool
    EEdge/connection tool
    HPan tool

    View

    KeyAction
    2Switch to 2D view
    3Switch to 3D isometric view
    GToggle grid
    TToggle theme (dark/light)

    Playback

    KeyAction
    SpacePlay/Pause animation
    HomeGo to start
    EndGo to end
    Left ArrowStep backward
    Right ArrowStep forward

    Editing

    KeyAction
    Delete/BackspaceDelete selected
    Ctrl+ZUndo
    Ctrl+Shift+ZRedo
    Ctrl+CCopy
    Ctrl+VPaste

    Modals

    KeyAction
    ?Show keyboard shortcuts
    Ctrl+KOpen command palette
    Ctrl+Shift+AOpen animation templates

    Presentation

    KeyAction
    F5Enter presentation mode
    Space/EnterAdvance to next step
    Left ArrowPrevious page
    MToggle step/continuous mode
    ESCExit presentation

    3D Isometric View

    Toggle between 2D and 3D views using the toolbar button or pressing Tab.

    3D Isometric View

    • 2D View: Top-down flat view, ideal for editing and precise positioning
    • 3D View: Cloudcraft-inspired isometric view, great for presentations and visual appeal
    In 3D mode:
    • Nodes render as isometric boxes with depth
    • Camera uses orthographic projection for clean isometric look
    • All editing tools work the same in both views
    • Labels scale correctly in both views

    Command Palette

    Press Ctrl+K to open the command palette for quick access to any action.

    Command Palette

    The palette provides searchable access to all editor commands and actions.


    Tips & Tricks

    Workflow Tips

  • Start with a template - Load a template close to what you need, then modify it
  • Use pages for storytelling - Break your diagram into logical steps
  • Add descriptions - Page descriptions appear in presentation mode as explanation cards
  • Preview often - Use Space to play animations while editing
  • Layer animations - Combine entrance animations with flow animations for rich presentations
  • Animation Tips

  • Cascade reveals work best when elements are spatially ordered
  • Flow animations on edges make data movement easy to understand
  • Adjust timing by dragging keyframes in the timeline
  • Use easing - "Ease In-Out" gives the most natural-looking motion
  • Keep it simple - One or two animations per page keeps the audience focused
  • Performance Tips

  • Use 2D mode for editing - It's faster for precise positioning
  • Switch to 3D for presenting - The isometric view looks more impressive
  • Export regularly - Save your work with the Export button
  • Use keyboard shortcuts - They're much faster than clicking
  • Presentation Tips

  • Use Step Mode for live presentations where you control the pace
  • Use Continuous Mode for self-running demos or recordings
  • Write clear descriptions - They appear as cards during presentation
  • Practice the flow - Run through your presentation before the real thing
  • Press M to switch modes mid-presentation if needed
  • © 2026 Jonathan Leahy · v0.8.1-31-g196fa14