New Developer, Environment Question, Peter, North Carolina, USA,


I am new to neo4j.

I have spent a decent bit of time scripting...python/sql/bash..
I like being able to write out scripts, and run scripts, and or highlighted sections of the script against the database.

I am currently using the neo4j desktop and it feels like I only have access to terminal for in, and then neo4j out.

Is there a ide/setting that is closer to a text editor on the inbound side?
my memory is not great and Id like to have multiple queries on a page, and be able to toggle between them, and record comments if needed as well.

I need to be able to do this in order to become familiar with schema and data.
...Maybe I am too much in an sql mindset..

Hello Peter, and welcome to the community!

There are quite a lot of options, but I haven't found anything that's quite as convenient as what you're asking for.

cypher-shell with any ide or editor

cypher-shell supports piping in cypher-script files. Put each command in a single mycommand.cypher file, then pipe into cypher-shell. If you need well structured cypher params, it can get a little tricky.

> cat mycommand.cypher | cypher-shell -u [user] -p [password] --format plain > ~/cypherlog.mycommand.log 2>&1

IDE Plugin, like Graph Database support for Jetbrains IDEs.

Once configured, it adds a context menus to your code, database integration, and basic graph rendering in query responses. It's not the best at syntax checking all possible cypher commands and patterns, but it'll definitely get the job done.

Partial tools, free and paid

There's quite a few tools out there specifically for interacting with graphdbs, and even more that support Neo4j integrations. The catch with these tools is this: convenience is added through complexity in the UI, and reduced capabilities. Every tool is built with a certain method or goal in mind, and will never be as simple and flexible as raw Cypher. But, they can give a leg up to people learning graphs.

cypher shell is close to what I have done for a long time with mysql. Thats a cool start.
Too bad we dont have a dbeaver/toad/workbench style solution yet.

The Jetbrains IDE plugin, and Kineviz, both have live-edit tools.

As for something more like Workbench... one of the things I've noticed about graphs in general, is that every graph is unique, with it's own set of problems and needs. I'm not sure it would be possible to build a tool that could cleanly handle every possible graph, in a friendly UI.

That's why Neo4j has so many options for connecting/integrating/building-upon. One of those will always be a fast way to make whatever UI you need for your graph.