Editing Start
Editing begins through the context menu by right-clicking.

Right-clicking a table, a memo, a table group, or a relationship opens that item's own menu instead.
A right-click on a table, memo, or table group that is already selected keeps the whole selection, so rows such as Color and Delete selected act on all of it — see Multiple Selection.
A read-only editor creates nothing, so none of what this page describes is offered there: the canvas menu keeps only View Option, Name View, Export, and Diff Viewer, a table's menu only Table Properties, and a memo, a table group, or a relationship opens no menu — see Read-only Editors.
Welcome Screen
In the web app, Google Drive, VS Code, Obsidian, and a JetBrains IDE, an empty diagram opens on a welcome screen over the ERD canvas. An <erd-editor> in your own page shows it only when the page turns it on with enableWelcomeScreen.
A diagram counts as empty while it holds no table, no shown memo, and no shown table group, so memos and groups hidden with View Option do not count. The screen goes away as soon as the diagram holds one of them, and comes back whenever the diagram is empty again, for example after you delete the last table or undo adding the first.
It is not shown in a read-only editor, in zen mode, while Table Properties is open, or while the diff viewer, the Auto Layout preview, or time travel takes over the canvas.

Under the heading Right-click the canvas for every action. is a menu:
New Tableadds a table, asAlt + Ndoes.New Memoadds a memo, asAlt + Mdoes. It is left out while memos are hidden.Importswaps the menu forBackand the formatsjson,Schema SQL,GraphQL,DBML, andAML. Choosing a format asks for a file of that format and loads it in place of the empty diagram — see Importing or Exporting Files.Back, orEscape, returns to the first menu.Command Paletteopens Quick Search, asCtrl + K(Windows/Linux) or⌘ + K(Mac) does.Shortcutsopens Settings on itsShortcutstab.
Where the canvas is wide enough, New Table, New Memo, and Command Palette show the key currently bound to their command, including one a host has remapped.
Once a row has the keyboard focus, ↑ and ↓ move through the rows and wrap around, Home and End jump to the first and last, and Enter or Space presses the focused row. Every other shortcut still works, so Alt + N adds a table from there too.
Only the menu takes clicks: a press anywhere else on the screen reaches the canvas, and right-clicking the canvas opens the context menu as usual.
Where the canvas has room, hand-drawn arrows point at:
- the toolbar's
Searchbutton:Search commands and tables - the
ThemeandDisplay Languagebuttons:Pick a theme and a language, orPick a themeorPick a languagewhen the toolbar shows only one of them — see Language and Theme - the canvas toolbar at the bottom:
Pan, zoom and draw relationships
While the Explorer is shown, the welcome screen covers only the canvas beside it.
An arrow whose toolbar button stands above the Explorer is left out. The Theme and Display Language arrow is left out only when both of its buttons stand above the Explorer; until then it points at the one still over the canvas.
A label with no room beside its arrow hangs under the arrow instead.
Table Creation
Create a table from the context menu, with the New Table button on the canvas toolbar, or with the shortcut Alt + N.
Memo Creation
Create a memo from the context menu, with the canvas toolbar's New Memo button, or with the shortcut Alt + M.
While View Option → Memos is off, memos are hidden, nothing offers New Memo, and Alt + M adds none — see Table View Options.
A memo is a free-text note on the canvas. Click into its body and type; the text is saved with the document.
Escape closes the memo editor, keeping what you typed and leaving the memo selected, and a second Escape clears the selection.
Drag its border to resize it. The x in its header, shown while the pointer is over the memo, deletes it.
Right-clicking a memo opens its menu rather than the editor: Color, Remove color while a selected item has a color, and Delete, which reads Delete selected while the memo is one of two or more selected items. A selected memo is also deleted with the keys that delete tables — see Table and Memo Deletion.

Table Group Creation
A table group is a box that holds tables, and you can give it a name and a color. Create one in either of two ways:
- Choose
New Table Groupfrom the context menu or Quick Search, click theNew Table Groupbutton on the canvas toolbar, or pressAlt + G(Windows/Linux) or⌥ + G(Mac), then drag a box over the canvas. Each table whose center lies inside the box joins the new group, unless it is already in another group — see Drawing a Group. - Select tables and choose
Group selected tablesfrom a table's context menu orGroup Selected Tablesfrom Quick Search, or pressTthenG— see Grouping Selected Tables.
Naming, coloring, moving, resizing, and the rest are covered in Table Groups.
Relationship Creation
Start a relationship from the context menu, from the canvas toolbar at the bottom of the canvas, or with a shortcut. Each relationship type has its own:
- Zero One:
Ctrl + Alt + 1(Windows/Linux) or⌘ + ⌥ + 1(Mac) - Zero N:
Ctrl + Alt + 2(Windows/Linux) or⌘ + ⌥ + 2(Mac) - One Only:
Ctrl + Alt + 3(Windows/Linux) or⌘ + ⌥ + 3(Mac) - One N:
Ctrl + Alt + 4(Windows/Linux) or⌘ + ⌥ + 4(Mac)
Once a type is armed the cursor changes. Click the parent table first, then the child table.
The parent gets a primary key if it does not have one, and for each of the parent's primary key columns the child gets a Not Null foreign key column with the same data type, default, comment, logical name, and domain.
A serial key is the exception: its foreign key takes the integer type the serial stores, such as integer for serial4, and then links no domain — see Identifying Relationships.
Each foreign key column is named after its key: a one-word name such as id gets the parent table's name in front (user_id), a name of several words such as member_id is kept, and a name the child already has is numbered (user_id_2) — see Foreign Key Column Names.
Clicking one table twice draws a self-referencing relationship.
A new relationship starts with On Delete and On Update both Not set; change them from its context menu — see ON DELETE and ON UPDATE.
Press Escape, or press the same shortcut again, to cancel. Canceling leaves the selection as it is, and the next Escape clears it.
Once the parent is picked, pointing at a table the relationship can end on outlines that table and shows two buttons beside it:
Create new columns(+) draws the relationship with new foreign key columns, as clicking the table does.Map to existing columns(a link icon) ends the draw and opens Map Columns for the two tables, so the relationship can use columns the child already has. Nothing is written until you pressMap.
The parent shows the buttons too once the pointer has moved a short way from where you clicked it, so a self-referencing relationship can also be mapped onto existing columns.
A finger has no hover, so when you draw with one the buttons never show and tapping the child table draws the relationship at once; a pen shows them as a mouse does.
If the parent has lost its primary key by the time you reach the child, for example to an undo or a collaborator's edit, Create new columns is dimmed with the tooltip <parent> has no primary key to copy, and clicking the child table ends the draw without drawing anything.
The tooltip names the parent as the Name View does.

Duplicating Tables and Memos
Existing tables and memos can be copied, pasted, and Alt-dragged into duplicates — see Table-related Functions.