Draw an existing Neo4j database as a graph model

toro4n can draw the structure of a database you already have, without connecting to it: you run two queries yourself, paste the results, and the model appears, laid out and ready to edit. Only the structure is read, never the data.

Step by step

  1. Open File → Import… and choose the source Neo4j database.
  2. Copy the first query with its Copy button, run it in Neo4j Browser, and paste the result into the first field. Do the same with the second query. There are two because Neo4j doesn't allow SHOW CONSTRAINTS together with anything else.
  3. Choose a name for the layer the import goes into, and import.

Instead of pasting, you can choose or drop the exported result files. toro4n recognizes the result wherever it's pasted from: Neo4j Browser's JSON export, the HTTP API's answer, or cypher-shell's output. Both results are needed; a single dropped result opens Import so you can add the other.

What the queries read

Both queries are read-only. The first reads the labels, the properties with their types, and the relationship types with their start and end labels, through Neo4j's own schema procedures. The second reads the constraints. No query touches the data, and toro4n never connects to the database, so this works with any Neo4j installation, including ones with no network access from the outside.

What is drawn

The result goes through the same checks as a file, and then the ordinary import: the merge question if labels clash with the open model, and a layer of its own. Tested against real results from Neo4j 2026.09 and 5.26.

Going the other way

Once you've changed the model, export it as Cypher: a script with the constraints and CREATE statements for Neo4j.

Questions

Does toro4n connect to my Neo4j database?

No. You run two read-only queries yourself in Neo4j Browser and paste the results into toro4n. toro4n never opens a connection to the database and never sees its data, only its structure.

Does it read the data in the database?

No. The queries return labels, property types, relationship types, and constraints. Property values are never read.

Related