Graph management
A graph is one map: its concepts, relations, and display settings. You can keep several graphs and switch between them, export or import any of them as JSON, and, on desktop, group graphs into project folders.
Multiple graphs
Section titled “Multiple graphs”The Sidebar lists every graph in the current project. Click a graph to switch to it: the canvas, Inspector, and Review queue all follow.
- Rename: double-click a graph’s row in the list, type the new name,
Enterto commit. - Delete: hover a row and click the trash icon. You’re asked to confirm. Deleting also removes its file from the project folder on desktop. The last remaining graph can’t be deleted, so the delete action is hidden when only one graph is left.
- New graph: the New button above the list creates an empty graph and switches to it immediately.
Switching graphs flushes any pending autosave on the one you’re leaving, so edits made just before a switch aren’t lost.
Export and import (JSON)
Section titled “Export and import (JSON)”Open the ⋯ menu in the top bar (tooltip: “Export · Import · Shortcuts”) for:
- Export graph: saves the active graph as a
.jsonfile named after the graph. - Export graph (.png): renders the canvas at 1920×1200 and saves it as an image, with React Flow’s selection handles excluded from the render.
- Import graph: opens a file picker for a
.jsonfile and adds it as a new graph.
Export behaves differently depending on platform:
- Desktop: a native save dialog lets you pick the destination.
- Web: if your browser supports the File System Access API, you get a save dialog and can overwrite the same file on repeat exports. Otherwise it falls back to a normal browser download.
Importing a file that isn’t a valid Nesso graph shows an error toast and imports nothing. A successful import creates a new graph (de-duplicating its name against your existing graphs) and switches to it.
Exported JSON carries graph content only: concepts, relations, and display settings. Personal review progress (FSRS data) is never included, so sharing or re-importing a file never carries someone else’s recall history.
Desktop projects
Section titled “Desktop projects”On the desktop app, graphs live inside project folders: plain directories on disk holding one JSON file per graph plus a small manifest. The Projects section in the sidebar (desktop only) lists every folder you’ve opened and lets you switch between them.
- New project: the + menu’s “New project” opens a native save dialog. Name and place a new folder. It’s created empty and becomes the active project.
- Open project: the same menu’s “Open project…” opens a native folder picker for an existing project folder elsewhere on disk.
- Switch project: click any project in the list. The current graph is saved first, then the target folder’s graphs load.
- Remove project: hover a project and click the trash icon, then confirm. This only removes it from Nesso’s list. Its files stay on disk untouched. You can’t remove the last project in the list.
- Reveal in Finder: hover a project and click the folder icon to reveal it in the system file manager.
If a project folder is moved, renamed, or deleted outside the app, it stays in the list marked as missing (greyed out, with a “not found” label) rather than disappearing. Switching away from a missing project happens automatically. Switching back works again once the folder reappears at the same path. Only the trash icon removes it from the list for good.