Skip to content

gravytrain/crispy-umbrella

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Crispy Umbrella Starter

This project is a GraphQL, Pick your UI, Apollo, Neo4j Database application. Drop your own UI, like Aurelia, or you can drop in React from GRANDStack.

Quickstart

Neo4j

You need a Neo4j instance, e.g. a Neo4j Sandbox, a local instance via Neo4j Desktop, Docker or a Neo4j instance on AWS, Azure or GCP or Neo4j Cloud

For schemas using the @cypher directive (as in this repo) via neo4j-graphql-js, you need to have the APOC library installed, which should be automatic in Sandbox, Cloud and is a single click install in Neo4j Desktop. If when using the Sandbox / cloud you encounter an issue where an error similar to Can not be converted to long: org.neo4j.kernel.impl.core.NodeProxy, Location: [object Object], Path: users appears in the console when running the React app, try installing and using Neo4j locally instead.

Sandbox setup

A good tutorial can be found here: https://www.youtube.com/watch?v=rPC71lUhK_I

Local setup

  1. Download Neo4j Desktop
  2. Install and open Neo4j Desktop.
  3. Create a new DB by clicking "New Graph", and clicking "create local graph".
  4. Set password to "letmein" (as suggested by api/.env), and click "Create".
  5. Make sure that the default credentials in api/.env are used. Leave them as follows: NEO4J_URI=bolt://localhost:7687 NEO4J_USER=neo4j NEO4J_PASSWORD=letmein
  6. Click "Manage".
  7. Click "Plugins".
  8. Find "APOC" and click "Install".
  9. Click the "play" button at the top of left the screen, which should start the server. (screenshot 2)
  10. Wait until it says "RUNNING".
  11. Proceed forward with the rest of the tutorial.

Install dependencies

(cd ./api && npm install)

Start API server

cd ./api && npm start

Deployment

The build utilizes Webpack. Drop the .js file onto your server and run

node main.js 

Docker Compose

To use docker-compose to quickly start please make the following changes

api/.env:

NEO4J_URI=bolt://neo4j:7687
NEO4J_USER=neo4j
NEO4J_PASSWORD=letmein
GRAPHQL_LISTEN_PORT=4000
GRAPHQL_URI=http://api:4000

Now you can quickly start via:

docker-compose up -d

If you want to load the example DB after the services have been started:

docker-compose run api npm run seedDb

About

Apollo and Neo4j Template utilizing Webpack

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published