theFlow! Documentation

theFlow!

A visual canvas for connecting ideas, media, and workflows.

Xavier Garès © 2026 GPLv3

Introduction

What is theFlow!?

theFlow! is a beautiful, lightweight, infinite canvas application designed for visual thinking and knowledge organization.

Think of it as a whiteboard where you can place different kinds of nodes — containers that hold text, images, video, audio, documents, or drawings — and draw connections between them to map out ideas, workflows, stories, or any structure that matters to you.

Unlike a traditional document or presentation, theFlow! has no fixed order. You arrange things spatially, the way your mind actually works.

Who is theFlow! for?

What can you do with it?

Key Concepts

TermWhat it means
CanvasThe infinite workspace you draw on
NodeA container holding content (text, image, video, etc.)
ConnectionA line drawn between two nodes
SocketThe small circle on the edge of a node where connections attach
DotA small junction point on a connection line
BackdropA coloured region that groups nodes visually
Sticky NoteA freeform text note, like a Post-it

Getting Started

Your First Node

  1. Right-click anywhere on the empty canvas.
  2. Go to Create → Node → Text Node, or simply press T.
  3. A text node appears at the cursor position.
  4. Double-click the node to open the editor and give it a name and body text.
  5. Click OK to close.

Your First Connection

  1. Create a second node (press T again somewhere else).
  2. Hover over the first node — a small coloured socket appears on its edge.
  3. Click and drag from that socket toward the second node.
  4. Release over the second node's socket.
  5. A connection line appears between them.

The Canvas

Navigating

ActionHow
PanHold middle mouse button and drag, or hold Space and drag
Zoom inScroll up, or Ctrl +
Zoom outScroll down, or Ctrl −
Frame selectedPress F with items selected
Frame allPress F with nothing selected

Selecting Items

The Right-Click Menu

Right-clicking on the canvas opens the main menu:

File   ▸  New File / Open / Save / Save As / Export Selected / Import Nodes / Quit
Edit   ▸  Copy / Cut / Paste / Undo / Redo
Create ▸  Node ▸ … / Dot / Backdrop / Sticky Note
View   ▸  Rearrange / Frame / Expand viewers …
Settings
Help   ▸  Shortcuts / Documentation
About

Right-clicking on a node, dot, backdrop, or sticky note opens that item's own context menu instead.

The Tab Quick-Create Menu

Press Tab anywhere on the canvas to open a pop-up list of everything you can create. Click an item to place it at the cursor position. This is the fastest way to create nodes without using the right-click menu.

Nodes

A node is the basic building block of theFlow!. Every node has:

Text Node — T

T
Text Node

Holds a name (shown on the canvas) and body text (hidden until you open the inline viewer). Use it for ideas, descriptions, or any plain content.

Double-click to open the editor:

  • Name — shown on the node at all times
  • Text — body content, supports bold, italic, underline, strikethrough
  • Canvas font size — controls how large the name appears

Press on a selected text node with body content to open the inline text viewer — a resizable panel below the node. Drag its bottom-right corner to resize.

Image Node — I

I
Image Node

Holds a reference to an image file on disk.

Double-click to open the editor:

  • Set or change the name
  • Browse to load an image file (PNG, JPG, SVG, TIFF, and more)
  • Preview the image with scroll-to-zoom and drag-to-pan

Press on a selected image node to show the inline image viewer below the node.

Movie Node — M

M
Movie Node

Holds a reference to a video file on disk.

Double-click to open the editor:

  • Set or change the name
  • Browse to load a video file (MP4, MOV, AVI, MKV, and more)
  • Play, pause, stop and scrub through the video directly in the dialog
  • Adjust volume with the slider

Press on a selected movie node to open the inline video player below the node — a full player with timeline, transport controls, and volume, that scales with canvas zoom.

Audio Node — A

A
Audio Node

Holds a reference to an audio file on disk.

Double-click to open the editor:

  • Set or change the name
  • Browse to load an audio file (WAV, MP3, AAC, FLAC, and more)
  • A waveform preview is shown (real peaks for WAV, simulated for other formats)
  • Play, pause, stop, scrub, and adjust volume

Press on a selected audio node to open the inline audio player. Hover over it to reveal transport controls and timeline. Only one player plays at a time — starting one pauses all others.

Document Node — D

D
Document Node

Holds a reference to any file — PDFs, text files, code, spreadsheets, or anything else.

Double-click to open the editor:

  • Set or change the name
  • Browse to load any file
  • A preview is shown for images, text files, and PDFs
  • Click Open with System Application to open in its default app

Press on a selected document node to open the inline doc viewer, which shows the file name and an Open button.

Paint Node — P

P
Paint Node

An in-app freehand drawing canvas.

Double-click to open the paint editor:

  • Color — pick the brush colour
  • BG — pick the canvas background colour
  • Size — adjust brush size with the slider
  • Radius — controls stroke taper (0 = flat ends, higher = rounder, tapered strokes)
  • Eraser — toggle eraser mode
  • Scroll to zoom, Space + drag or middle-mouse to pan the drawing canvas
  • Click Done or close the window to save the drawing back to the node

Press on a selected paint node to show the drawing as an inline image below the node.

Creating Nodes

MethodHow
Keyboard shortcutPress the letter key anywhere on the canvas
Tab menuPress Tab, then click the type
Right-click menuRight-click → Create → Node → …

Moving, Copying, Deleting

Editing Appearance

Right-click any node to access:

Inline Viewers

KeyAction
Open inline viewer/player for selected node(s)
Close inline viewer/player for selected node(s)
Shift ↓Expand all inline viewers on the canvas
Shift ↑Close all inline viewers on the canvas
SpacePlay/pause the inline player under the cursor

Dots

A Dot is a small circular junction point that lives on a connection line. It acts as a pass-through — connections flow in through one socket and out through the other.

Creating a Dot

Using Dots

Dots let you route connections through intermediate points, creating branching or complex layouts. You can drag a dot anywhere on the canvas to reshape the path.

Removing a Dot

Shift-click a dot that has exactly one connection in and one out — the dot is removed and the two lines merge back into one.

Dot Appearance

Right-click a dot to access:

Connections

A connection is a line drawn between two node sockets or between a socket and a dot.

Drawing a Connection

  1. Hover over a node until the socket circle appears.
  2. Click and drag from the socket.
  3. A temporary line follows your cursor.
  4. Release over another node's socket or a dot socket.

You can connect output → input, input → output, or any socket → any socket. theFlow! normalises the direction automatically.

Connection Types

Right-click a connection line to change its type:

TypeAppearance
BezierSmooth curved line (default)
LineStraight line between sockets
StepRight-angled stepped path

Customising a Connection

Right-click a connection to access:

Custom colour, style, and width are preserved when you switch themes. Connection type is always preserved.

Disconnecting

Backdrops

A Backdrop is a large coloured region used to visually group nodes. When you move a backdrop, all nodes fully inside it move with it.

Creating a Backdrop

Resizing

Drag any of the four corner handles. Nodes pinned inside stay in place relative to the backdrop during the resize.

Editing a Backdrop

Double-click to open the editor:

Right-click to access:

Nesting Backdrops

You can place a backdrop inside another backdrop. The inner one moves with the outer one.

Sticky Notes

A Sticky Note is a simple coloured note — like a Post-it — for quick annotations anywhere on the canvas.

Creating a Sticky Note

Press S, or use the Tab menu / right-click menu.

Editing

Double-click to open the editor:

Resizing

Drag any of the four corner handles.

Appearance

Right-click to access:

Organising Your Canvas

Rearranging Nodes

Select two or more nodes, then right-click the canvas:

Both commands respect the node's shape — a circle or diamond will be spaced correctly, never overlapping.

Framing the View

ActionHow
Frame selected itemsSelect items, press F
Frame everythingPress F with nothing selected
Center selectedRight-click → View → Center Selected

Inline Viewers

ActionShortcut
Open viewer for selected node(s)
Close viewer for selected node(s)
Open all viewers on canvasShift ↓
Close all viewers on canvasShift ↑

Files

File Format

theFlow! saves your canvas as a .flow file — a JSON text file containing all nodes, connections, positions, colours, and embedded paint drawings. It can be reopened on any machine running theFlow!.

File Operations

ActionShortcutNotes
New FileCtrl NClears the canvas. Prompts to save if there are unsaved changes.
OpenCtrl OOpens a .flow file from disk.
SaveCtrl SSaves to the current file. Prompts for location if file is unnamed.
Save AsCtrl Shift SSaves to a new location.
Export SelectedCtrl ESaves only the selected nodes, backdrops, sticky notes, and their connections to a new .flow file. Shows a warning if nothing is selected.
Import NodesCtrl ILoads nodes from a .flow file and adds them to the current canvas without clearing it. Imported items are offset by 80 px so they don't overlap existing content.

Autosave

When Autosave is enabled in Settings, theFlow! automatically saves your file every 30 seconds — but only if:

Tip: Autosave never creates new files or overwrites an unnamed canvas. Toggle it in Settings → Canvas → Autosave.

Draw Annotations

Annotation mode lets you draw freehand strokes directly on the canvas — on top of all nodes, backdrops, and connections. Strokes are saved with the file and included in exports.

Activating

Press Ctrl P or go to Draw ▸ Draw Annotation in the right-click menu. A floating toolbar appears at the top-left of the canvas. Press Ctrl P again or click Close to exit.

Toolbar Controls

ControlWhat it does
Draw buttonSwitch to draw mode. Click and drag to paint a stroke.
Erase buttonSwitch to erase mode. Click and drag to remove strokes whose path the cursor crosses.
Colour swatchOpens a colour picker to set the stroke colour.
Thickness sliderSets the stroke width (1–40).
Style dropdownChoose between solid (——), dashed (- -), or dotted (···) strokes.
ClearRemoves all annotation strokes from the canvas (undoable).
CloseExits annotation mode. Strokes remain on the canvas.

Defaults

The default colour, thickness, and style for new strokes are set in Settings → Annotations. Changes apply immediately — even while the toolbar is open.

Tip: Strokes are fully undoable with Ctrl Z. You can also select individual strokes and delete them with Del.

Settings

Open Settings by right-clicking the canvas and choosing Settings.

Themes

The Dark Theme and Light Theme buttons instantly switch the entire application colour scheme — canvas background, menus, and all default node colours.

Nodes, dots, backdrops, sticky notes, and connections that you have individually coloured using their context menu keep their custom colour when you switch themes.

Canvas Tab

SettingWhat it does
Canvas BackgroundThe colour of the infinite canvas
Context Menu BackgroundThe background of right-click menus
AutosaveToggle automatic saving every 30 seconds

Nodes Tab

For each node type (Text, Image, Movie, Audio, Document, Paint, Dot) you can set default values that apply to newly created nodes:

Use Reset Section Defaults to restore a single node type to its theme defaults.

Curves Tab

SettingWhat it does
Connection Line ColorDefault line colour for new connections
Line ThicknessDefault line width
Line StyleSolid, Dash, or Dot
Routing TypeBezier, Straight, or Step
Socket ColorColour of the socket circles
Socket SizeSize of the socket circles

Sticky Notes & Backdrops Tabs

Set the default colour, font size, and font colour for newly created sticky notes and backdrops respectively.

Annotations Tab

Sets the default stroke colour, thickness, and style used when entering annotation mode. Changes apply immediately to the active painter — even while the toolbar is open.

SettingWhat it does
Stroke ColorDefault colour for new annotation strokes
Stroke ThicknessDefault width (1–40)
Stroke StyleDefault pattern: solid, dashed, or dotted

Saving Settings

Click Save Settings to write your settings to disk. Settings are stored in settings/settings.json inside the application folder and are loaded automatically at startup.

Keyboard Shortcuts Reference

Creating

TText Node
IImage Node
MMovie Node
AAudio Node
DDocument Node
PPaint Node
QDot
BBackdrop
SSticky Note
TabQuick-create menu

Editing

Ctrl ZUndo
Ctrl YRedo
Ctrl CCopy
Ctrl XCut
Ctrl VPaste
Del / BkspDelete selected

Connections

ActionEffect
Shift-click a connectionInsert a dot / split the line
Shift-click a dotRemove dot / merge lines
Shift-click a nodeDisconnect all connections

View

FFrame selected / all
Open inline viewer
Close inline viewer
Shift ↓Expand all viewers
Shift ↑Close all viewers
SpacePlay / pause player
Middle dragPan
ScrollZoom

File

Ctrl NNew file
Ctrl OOpen
Ctrl SSave
Ctrl Shift SSave As
Ctrl EExport Selected
Ctrl IImport Nodes
Ctrl QQuit
KShow shortcuts

Draw Annotations

Ctrl PToggle annotation mode

Tips & Tricks

Start with a backdrop

Press B before placing nodes to create a labelled region. This keeps large canvases organised from the start.

Tab is fastest

Move the cursor to where you want the node, press Tab, click the type. Faster than any menu.

Double-click is always edit

On any item — node, sticky note, backdrop — double-clicking always opens its editor.

Shift-click to split

Want a waypoint on a connection? Shift-click the line at exactly the point you want the bend.

Frame after pasting

After pasting a complex set of nodes, press F to frame everything and get a quick overview.

One player at a time

Starting any inline audio or video player automatically pauses all others. The last one you click has priority.

Paint saves on close

You don't need to click Done. Closing the paint window also saves the drawing back to the node.

Custom colours survive themes

Colours you pick via the context menu colour picker are remembered and never overwritten by theme switches.

Enable autosave

Settings → Canvas → Autosave. Saves silently every 30 seconds once your file has a name.

Text viewer is resizable

After opening the inline text viewer with , drag the bottom-right corner to any size you need.