This file is dedicated to getting you ready to start developing. If you have questions, head over to our slack channel and fire away!
We start with the backend, simply because it is required for you to have any functionality on the frontend. A high-level checklist is:
- install java 8 (sdk & jre)
- install maven version 3
- install neo4j version 2.X.Y
localhost:7474and change password
- update password in
- start with
mvn exec:java -Dpippo.mode=dev
Setting up the backend¶
Java 8 (SDK & JRE) is required. Almost all os have a standard way of installing and upgrading java. These guides may work for you, but ideally you should look it up.
Test if you already have java 8 by running (any os):
sudo apt-get install default-jre
sudo apt-get install default-jdk
windows: Download the JRE and SDK from oracle.
os x/mac os: install homebrew, then
brew install java
- try the default package manager
- otherwise check this out
Install the community edition, version 2.3.X where X is the highest you can find. Again, the installation process depends on your os/environment. Here is the official documentation. Below are summaries:
- install neo4j via apt-get (instructions)
system neo4j startto start
system neo4j stopto stop
- download the installer (.exe) from legacy
- run it and install neo4j
- start & stop neo4j using the
- download the neo4j dmg from legacy
- drag neo4j to your applications folder
- use that program to start & stop a neo4j server
- download a binary from legacy
- untar it
tar -xzf <neo4j-download.tar.gz>
pwdto get current working directory
echo 'export $PATH=/full/path/to/neo4j-download/bin/:$PATH' >> ~/.profile
- now your current and all new shells will be able to run the neo4j script
neo4j stopto start & stop, respectively
After installation you should start a neo4j server and navigate to
http://localhost:7474 and login using neo4j/neo4j. Choose a new password, and remember it. You will need it later on.
After all required software has been installed you are ready to proceed.
- Strap up!
mkdir connect && cd ~/connect
git clone firstname.lastname@example.org:emenlu/connect.git backend
- Charge in
src/main/resources/conf/application.propertiesin your editor of choice
neo4j.passwordto what you entered previously in the web ui
- Then run
mvn compile exec:java
- The backend will now create a superuser and initialize the database. (Make sure neo4j is running!)
Et voilà, you are ready!
In the future, run
mvn compile exec:java -Dpippo.mode=dev. It executaes both commands sequentially and launches the server in dev mode.
To use Eclipse, simply import the backend files as a github repository. We recommend using a maven plugin to facilitate running the server.
The frontend project is often much simpler to install since it only depends on nodejs, thus this section is mainly on how to install nodejs. The high-level checklist is:
- install nodejs (v5 or v6)
npm installin repo.
- browse to
Setting up the frontend¶
The frontend relies on nodejs to compile page templates and style files. Node.js has its own package manager, called
npm, which lists dependencies in a
package.json file. Thus the only programs you need to manually install are
npm is bundled with
node so installing
node is sufficient.
node -v in a terminal to check version:
- v5 and v6 are confirmed to work with the connect frontend
- v7 and v8 are unknown
If you already have node v7 or v8 then you should install a version manager to switch between multiple version. Here are a few, though some only support specific operating systems:
The actual steps for installing Node.js vary depending on your operating system.
windows: Download the installer and run it. It will install
npm and put them in your
mac os: Install with homebrew.
brew install node@6
Most popular linux distros have up-to-date packages of
node and this is the easiest way to install nodejs. There is a guide here on doing this.
If this fails you must download a tarball and put
/usr/bin or similar. Some linuxes have a program called
alternative to symlink files into
npm install in the repository to install all dependencies. Then try to run the dev. server using
make dev. If this fails, report to Axel. Otherwise you are good to go!