Twigs
Short notes on how TreeLine works — written for the curious, shown where they are most useful.
Arrangement
Why larger TreeLines take longer
Arranging a TreeLine means solving a placement puzzle — finding the best position for every person across every generation. Larger families have many more possible arrangements to consider, so the process takes proportionally longer.
How TreeLine arranges your family
TreeLine places each person in a row according to their generation, then optimises the overall layout to minimise visual crossings and maximise clarity. The result is a chart that reads naturally from left to right through time.
Why some branches fold back
When a family has complex inter-relationships — cousins who married, or families connected across multiple lines — TreeLine sometimes folds a branch back to keep the chart readable. This is a deliberate layout choice, not an error.
Selecting people for row dragging
Click a person to select them. **Shift + click** selects all descendants. **Alt + Shift + click** selects all ancestors. **Ctrl + Shift** toggles a person and their descendants; **Ctrl + Shift + Alt** toggles ancestors. Hover over a selected person and drag to move all selected rows together. Press **Ctrl + Z** to undo, or **Escape** to clear the selection.
How dates place people in time
TreeLine uses **birth dates** to position each person horizontally on the timeline. More complete dates produce more accurate placement — and a more meaningful chart.
Clarity & Simplification
Why simplifying can improve clarity
A chart with every person visible is not always the most readable chart. Pruning lets you focus on the people and lines that matter most, making the resulting TreeLine easier to read and more meaningful to share.
Branches view
Colours every person by their relationship to the **mainline** — the direct path connecting your protagonists plus all their ancestors. **Mainline** people are highlighted in one colour, **immediate** family (spouses and siblings of the mainline) in another, and each **branch** gets its own colour. A badge on each bar shows the separation distance and generation number.
Separation view
Shows how many family-link steps each person is from the **mainline**. Mainline people are distance 0, their spouses and siblings are 1, and each further step outward adds another degree. Bars fade in opacity the further they are from the mainline, making it easy to spot distant relatives at a glance.
Mainline only
Hides everyone who is not on the **mainline** — the direct ancestral path connecting your protagonists. Spouses, siblings, and all branches are temporarily hidden so you can focus on the core lineage. Switch back to Standard view to restore everyone.
Show hidden people
Reveals people you have previously hidden or pruned. They appear as **greyed-out ghost bars** so you can distinguish them from visible people. Right-click a hidden person to unhide them, or use **Reset → Show all** to restore everyone at once.
Errors view
Highlights people who have **data quality issues** — such as impossible dates, implausible ages, or disconnected records. Errors are shown in red, warnings in amber, and informational notes in blue. Click an issue in the legend to select the affected people.
Generations view
Colours every person by their **generation number**. Generation 1 is the earliest ancestor; each child generation increments by one. Spouses share the same generation as their partner. Adjacent generations use contrasting colours so they are easy to distinguish at a glance.
What makes a TreeLine feel balanced
A balanced TreeLine distributes branches evenly, avoids long stretches of empty space, and keeps connectors short and unambiguous. Balance is part aesthetic, part mathematical — TreeLine optimises for both.
Why photos can affect your layout
Photos change the height of person bars, which affects row spacing and overall chart dimensions. A chart with many photos will be taller and may arrange differently to one without.
Rendering & Output
Why rendering happens in stages
TreeLine separates arrangement from rendering so that style changes — colours, paper size, fonts — can be applied instantly without repeating the expensive layout calculation.
Why your TreeLine may be queued
TreeLine processes charts one at a time per worker. During busy periods, your chart waits briefly in a queue before arrangement begins. Larger charts have their own queue to ensure smaller charts are never delayed by them.
Help
The Canvas Controls
The bar along the bottom of the screen is the **Canvas Controls**. It changes how the chart is **displayed on your screen** — it does **not** change the layout or what prints. From here you can: - **Zoom** in and out (**−** / **+**), or snap to **Fit** or **1:1**. - **Width** fits the chart to the window width. - **Colour** applies a screen-only tint (by branch, generation, lineage, warnings …) to help you inspect the design. - The **···** menu holds extra screen aids, including **Edit borders** for dragging the page edge. Think of it as a working overlay: everything here is for *looking* at the chart while you work. Turn on **Presentation mode** (in ···) to preview exactly what will print.
The Right-Click Menu
**Right-click** is where you actually **shape the tree**. **Right-click a person** (or a selection of people) for actions on *those* people: - **Arrange** — fold, stagger or move a branch up to its parent. - **Bar style** — full bar, thin line, stub, or group children. - **Prune** — hide people or split them into a new TreeLine. - **New frame** — make a smaller chart from a selection. - Edit or delete the person. **Right-click empty canvas** for chart-wide controls (paper, colour, presentation mode, and more). Unlike the Canvas Controls, these changes *do* affect the layout and the printed result.
The Pane Buttons
The **icon rail** down the side of the screen opens the **panes** — each one a focused set of controls. Click an icon to open a pane; click it again to close. Typical panes: - **Chart / Print** — paper size, orientation and scale. - **Design** — spacing, bar styles and other look-and-feel settings. - **People** — a searchable list of everyone, with data-quality flags. - **Images** and **Info** — photos, and a summary of the tree. Panes are where you go to **change settings and review** the tree, a topic at a time. Open one, make your changes, and close it again.