Design and Manage Neo4j Databases Visually with DbSchema

DbSchema lets you design, manage, and document Neo4j databases. Create ER diagrams, define tables and columns, and generate SQL scripts - with or without a live database connection.

Use Git to share the design, compare it with the Neo4j database, and deploy changes. DbSchema also includes a data editor, query builder, and HTML5 documentation - everything you need in one tool.

DbSchema Database Designer

Download DbSchema Download Neo4j JDBC Driver

Visualizing Neo4j's Graph Schema with DbSchema

Neo4j is a native graph database that stores data as nodes, relationships, and properties, all organized under labels. Unlike relational databases, there are no fixed columns — each node carries its own set of properties, and relationships carry direction, type, and their own property set. DbSchema connects to Neo4j via the official Neo4j JDBC driver, which wraps the Bolt protocol, and renders the label schema as a visual diagram. Each node label appears as an entity, with its most commonly observed properties listed, and relationships between labels are drawn as directed edges so you can immediately grasp the topology of your graph model.

The GDS (Graph Data Science) library and APOC utility library extend Neo4j with graph algorithms, path-finding procedures, and data transformation utilities. DbSchema lets you call these procedures directly from the query editor and inspect their results in a tabular view, bridging the gap between procedural graph operations and the structured display your team is accustomed to.

Neo4j node-label schema rendered as a visual diagram in DbSchema

Writing Cypher Queries Through the JDBC Interface

DbSchema's SQL editor accepts Cypher queries when connected to Neo4j because the Neo4j JDBC driver translates JDBC calls to Bolt protocol messages transparently. You can write MATCH, CREATE, MERGE, and CALL statements exactly as you would in Neo4j Browser or cypher-shell. Results are returned as rows and rendered in the built-in result grid, making it straightforward to review path expansions, aggregation results, and list properties side by side.

The editor provides syntax highlighting, keyboard shortcuts for execution, and the ability to maintain multiple named query tabs so you can keep your MATCH queries for read operations separate from your MERGE-based upserts. Query results can be exported to CSV for further analysis or shared with colleagues who may not have direct database access.

Cypher query editor in DbSchema connected to Neo4j

Exploring Graph Data and Node Properties

The DbSchema data explorer lets you browse nodes by label, page through records, and inspect individual property values without writing a single Cypher statement. This is particularly useful when onboarding new team members to an existing Neo4j graph, or when you need to quickly verify that an import job populated the right node labels with the expected property structure. You can filter rows by property value and drill into relationship targets to navigate the graph neighbourhood around a specific node.

Neo4j's vector index capability — introduced for ML embedding workflows — stores high-dimensional float arrays as node properties. The data explorer surfaces these as array-type columns so you can confirm that embeddings were stored correctly and check their dimensionality, which is helpful when integrating Neo4j with LLM pipelines that rely on vector similarity search.

Browsing Neo4j node properties in the DbSchema data explorer

Connecting DbSchema to Neo4j

DbSchema ships with the Neo4j JDBC driver, so no manual driver download is required for standard setups. Create a new connection and select Neo4j from the database list. The JDBC URL format uses the Bolt port: jdbc:neo4j://localhost:7687. Neo4j exposes two ports by default — the HTTP browser port 7474 and the Bolt binary protocol port 7687. The JDBC driver communicates over Bolt, so always use port 7687 in the URL.

Authentication is handled with a Neo4j username and password. The default username is neo4j, and you will be prompted to change the password on first login. For AuraDB cloud connections, copy the Bolt URI from the AuraDB console (it will be of the form jdbc:neo4j+s://xxxxxxxx.databases.neo4j.io) and supply the generated credentials. SSL is enforced by default on AuraDB; use jdbc:neo4j+s:// or jdbc:neo4j+ssc:// schemes as appropriate.

Why Teams Use DbSchema with Neo4j

  • Automatically reverse-engineers node label schemas into visual diagrams without manual modelling effort.
  • Lets developers unfamiliar with Cypher inspect graph structure using a familiar entity-relationship canvas.
  • Enables Cypher query authoring with a results grid for teams that prefer a GUI over cypher-shell or Neo4j Browser.
  • Supports offline schema documentation generation — useful for architecture reviews and audit trails.
  • Provides a cross-database workflow: teams that run Neo4j alongside PostgreSQL or MongoDB can manage all connections from one tool.
  • Simplifies AuraDB cloud access by managing connection profiles without exposing raw credentials in scripts.