This repository contains the back end for the Zerobase smart tracing platform. Refer to the smart-tracing repo for the front end. We are using Kotlin and Neo4j with cloud storage on Heroku. We are using Dropwizard for the REST framework. Kotlin requires Java and Maven.
- Download IntelliJ community version to use as an IDE for Kotlin
- There is a dependency on Java 11 and Maven
- This project requires Java version 11 which can be dowloaded here
- Download Maven from here
- Follow these installation instructions
- Add the full path to your ~/.bash_profile
- A library for building RESTful web services here
- Maven is required to run successfully
Docker is used to run Neo4j on this project
- Install Docker here
- Pull the neo4j image
$ docker pull neo4j
$ git clone https://github.com/zerobase-io/smart-tracing.git
-
Open the folder in intelliJ navigate to File/Project Structure. Update the JDK home path to Java 11
-
In the file path src/main/kotlin/models/ open
Main.kt
-
In
Main.kt
right click on the run button next to main and click Create Run Configuration -
Set the environment variable as
GRAPHENEDB_PASSWORD=zerobase
And program arguments asserver src/main/resources/config.yml
-
From the command line navigate into the folder and run the following, it downloads all of the project dependencies
$ mvn clean install
- Run this to build
$ java -jar target/smart-tracing-api.jar server target/classes/config.yml
- In a different terminal window, run this to create and run a docker container. The first port is http endpoint and the second is bolt port :7687
$ docker run -d -p7474:7474 -p7687:7687 --name=zerboase-db neo4j:latest
- Open http://localhost:7474/ in your browser The default username and password for Neo4j is username: Neo4j Password: Neo4j You will then be asked to set a new password, make this password “zerobase”