Skip to content

neo4j-examples/movies-php-client

Repository files navigation

Neo4j Movies Application: Quick Start

CI

The Stack

These are the components of our Web Application:

  • Application Type: PHP Web Application

  • Web framework: Slim micro framework

  • Neo4j Database Connector: Neo4j PHP Client for Cypher Docs

  • Database: Neo4j-Server (4.x and 5.x) with multi-database

  • Frontend: jquery, bootstrap, d3.js

Provision a database quickly with Neo4j Sandbox or Neo4j Aura.

Endpoints:

Get Movie

// JSON object for single movie with cast
curl http://BASE_URL/movie/The%20Matrix

// list of JSON objects for movie search results
curl http://BASE_URL/search?q=matrix

// JSON object for whole graph viz (nodes, links - arrays)
curl http://BASE_URL/graph

Setup

This uses the PHP built-in HTTP server, along with the recommended PHP client.

Run:

First, install dependencies:

composer install

Start this application with:

composer run start

You can search for movies by title or and click on any entry.

Configuration options

Environment variable name Default value (or N/A)

PORT

8080

NEO4J_URI

neo4j+s://demo.neo4jlabs.com

NEO4J_USER

movies

NEO4J_PASSWORD

movies

NEO4J_DATABASE

movies

To run the database locally as well, start your local Neo4j Server (Download & Install), open Neo4j Browser. Then install the Movies data-set with :play movies, click the statement, and hit the triangular "Run" button.

Then, override the relevant environment variables above.

Another way is just to use docker and run:

docker compose up --build --wait