Deployment modes

There are several different scenarios of how to run Neo4j Browser:

  • Neo4j Server — Neo4j includes an HTTP server that can host the BROWSER module (Neo4j Browser).

  • Neo4j Desktop — Neo4j Browser comes out-of-the-box when you install Neo4j Desktop on your system.

  • Web application — Neo4j Browser is available as a web application.

  • Neo4j Sandbox — Try out Neo4j and Neo4j Browser.

  • Neo4j Aura — Neo4j Browser is available from the Neo4j Aura console.

  • Dedicated web server — Host Neo4j Browser as a standalone HTTP web application.

Neo4j Browser is open source (GNU General Public License v3.0) and the source code can be found at https://github.com/neo4j/neo4j-browser.

The following web browsers are supported:

  • Chrome (Latest version)

  • Firefox (Latest version)

  • Edge (Latest version)

Internet Explorer is not supported.

For details on how to set up a connection to Neo4j in Neo4j Browser, see Create a DBMS connection.

1. Neo4j Server

Neo4j is the world’s leading graph database. The architecture is designed for optimal management, storage, and traversal of nodes and relationships. There are two editions of Neo4j to choose from, the Community Edition and the Enterprise Edition. The Enterprise Edition includes all that Community Edition has to offer, plus extra enterprise requirements such as backups, clustering, and failover capabilities.

Neo4j includes a web server that can host different HTTP modules. If you are using the default configuration the web server will be started and host the BROWSER module (Neo4j Browser) at port 7474 when you start Neo4j. The BROWSER module is avaialable in Community Edition and Enterprise Edition.

If you do not want to host Neo4j Browser when you start Neo4j, remove BROWSER from the comma-separated list of the configuration setting dbms.http_enabled_modules.

Example 1. Start Neo4j

Prerequisites for this example:

  • Install the Neo4j linux tarball.

  • Current working directory is <neo4j-home>.

  • Using the default configuration.

Start Neo4j with the command:

bin/neo4j start

Neo4j starts a web server with the BROWSER module (Neo4j Browser) on port 7474.
Point your web browser to http://localhost:7474/browser.

New versions of Neo4j Browser are released independently of Neo4j Server. The Browser version bundled with Neo4j Server is the latest at the time of the Neo4j Server release. Consequently, when used with a Neo4j server, the Browser version may not be the latest one, and new Browser functionality may not be immediately available. If you cannot wait for the next release of Neo4j Server and access to the latest version of Browser, refer to the other deployment options below.

2. Neo4j Desktop

Neo4j Desktop is a local development environment for working with Neo4j, whether using local database instances or databases located on remote servers. It is designed to help you as a new user to learn and experiment with Neo4j locally by including everything you need to get started.

Neo4j Browser comes out-of-the-box when you install Neo4j Desktop on your system. By default, Neo4j Browser is configured to start as a Neo4j Desktop application at port 7474. You start the Neo4j Browser application from a project in Neo4j Desktop, provided that the Neo4j DBMS for that project is started.

  1. Download Neo4j desktop application.

  2. Install and start the Neo4j Desktop application using the provided instructions (shown when downloading).

  3. Set up your first project and database following step 2 of the provided Neo4j Desktop instructions.

    Remember your password. If you forget it, you have to remove the credentials file in data/dbms/authorization.

  4. Open the Neo4j Browser.

    browser with desktop

    Alternatively, you can access this from a regular browser window by typing http://localhost:7474 and signing in with Username: neo4j and Password: <your database password (set up in Desktop)>.

3. Web application

Neo4j Browser is available as a web application at https://browser.graphapp.io/. To setup up a connection to Neo4j with this web application (Neo4j Browser), you need a remote Neo4j instance that is configured with TLS.

4. Neo4j Sandbox

Neo4j Sandbox is a free, cloud-based instance of Neo4j, where you can learn about Neo4j, test your ideas, or play around with the pre-built data examples.

When you launch a project, it opens Neo4j Browser as a web application. The Neo4j Browser web application connects to your Neo4j instance that the sandbox created for you, without having to enter any connection URI.

browser with sandbox

5. Neo4j Aura

Neo4j Aura is Neo4j’s fully managed cloud service. Neo4j Aura is a fast, reliable, scalable and completely automated graph database as a cloud service.

Neo4j Browser can be accessed as a web application within the user interface of Neo4j Aura console. The Neo4j Browser web application connects to your Neo4j instance without having to enter any connection URI.

browser with aura

6. Dedicated web server

The Neo4j Browser is a client-side single-page application (SPA), which uses an HTTP server for its static content. It is possible to host a dedicated web server to serve Neo4j Browser as a web application. Download Neo4j Browser from Maven.

Here are some use cases of why this deployment mode could be useful.

Neo4j Browser local hosted

This case is valid if you have access to a Neo4j instance and do not want to install Neo4j Desktop or do not want to use a hosted Neo4j Browser web application. It is a simple solution, start a local hosted Neo4j Browser web application on your machine with a simple one-line command. It is also easy to run a specific version of Neo4j Browser, download the preferred version from Maven.

Neo4j Browser deployed web application

If you want to have specific network configurations within your network and host Neo4j Browser for quick access within your organization, you can host Neo4j Browser with an HTTP web server. This allows for full control of configuring the HTTP web server as needed. For example you way want to add a layer of access control to access the Neo4j Browser web application and configure the HTTP web server connection to use TLS.

Extend or improve the source code

Neo4j Browser is open source (GNU General Public License v3.0), and the source code can be found at https://github.com/neo4j/neo4j-browser. If you want to extend or contribute to the project, you can alter the code. This allows you to run a modified version of Neo4j Browser.

If you have installed Neo4j on your system, then disable the browser module (BROWSER) from running.
For more information, see dbms.http_enabled_modules configuration setting.

6.1. HTTP web servers

Here is a list of suggestions for simple HTTP web servers that can be used to host Neo4j Browser.

Python3 — http.server

A simple HTTP server that is bundled with Python 3. Do not use in production environment.

python -m http.server --directory neo4j-browser/ 8080
Node.js — http-server

A simple, zero-configuration command-line HTTP server.

npx http-server -p 8080 neo4j-browser/

For more information, see https://www.npmjs.com/package/http-server.

Node.js — serve

A simple HTTP server is ideal for serving a static site, single page application or just a static file.

npx serve -l 8080 neo4j-browser/

For more information, see https://www.npmjs.com/package/serve.

HTTP servers suitable for production use:

Nginx

A web server that can also be used as a reverse proxy and a load balancer.
For more information, see https://www.nginx.com/.

Apache HTTP Server

For more information, see https://httpd.apache.org/.

Internet Information Services (IIS)

For more information, see https://www.iis.net/.

6.2. Pre-built Neo4j Browser

You can download Neo4j Browser from Maven (https://search.maven.org/artifact/org.neo4j.client/neo4j-browser) and serve the web application with an HTTP server.

Example 2. Get pre-built Neo4j Browser and run an HTTP web server
  1. Download Neo4j Browser from Maven.

    wget https://repo1.maven.org/maven2/org/neo4j/client/neo4j-browser/4.3.0/neo4j-browser-4.3.0.jar

    Alternatively, manually go to https://search.maven.org/artifact/org.neo4j.client/neo4j-browser and download Neo4j Browser.

  2. Unzip the .jar file.

    unzip neo4j-browser-4.3.0.jar
  3. Host Neo4j Browser with an HTTP server.

    Start a web server to serve the content. In this example, you start a web server with Python 3.

    python -m http.server --directory browser/ 8080

    Point your web browser to http://localhost:8080.

  4. Test the connection to a Neo4j database instance.

    If you have the Neo4j tarball, you can start the database instance with the command (assuming that the current working directory is <neo4j-home>):

    bin/neo4j start

    In Neo4j Browser, connect to the Neo4j database instance with the URI:

    neo4j://localhost:7687

For details on how to set up a connection to Neo4j in Neo4j Browser, see Create a DBMS connection.

6.3. Build Neo4j Browser

You can build the source code and host Neo4j Browser.

The source code can be found at https://github.com/neo4j/neo4j-browser.

Example 3. Build Neo4j Browser and run an HTTP web server
  1. Get the source code from Github

    Clone the Neo4j Browser Git repository. The command gets only the master branch to save bandwidth and file space.

    git clone --single-branch --branch=master https://github.com/neo4j/neo4j-browser/

    Change the current working directory to the root of the Git repository.

    cd neo4j-browser
  2. Build with Node.js.

    1. Install Node.js dependencies.

      npm install
    2. Build the project.

      npm build
  3. Host web application with an HTTP server.

    Start a web server to serve the content. In this example you, start a web server with Python 3.

    python -m http.server --directory dist/ 8080

    Point your web browser to http://localhost:8080.

For details on how to set up a connection to Neo4j in Neo4j Browser, see Create a DBMS connection.