All Projects → neo4j-examples → paradise-papers-django

neo4j-examples / paradise-papers-django

Licence: Apache-2.0 license
A simple Django web app for searching the Paradise Papers dataset backed by Neo4j

Programming Languages

python
139335 projects - #7 most used programming language
HTML
75241 projects
javascript
184084 projects - #8 most used programming language
CSS
56736 projects

Projects that are alternatives of or similar to paradise-papers-django

BusinessIntelligence
商务智能期末项目
Stars: ✭ 43 (-31.75%)
Mutual labels:  neo4j
neo4j-expire
GraphAware Module for Expiring (Deleting) Nodes and Relationships
Stars: ✭ 30 (-52.38%)
Mutual labels:  neo4j
OGMNeo
[No Maintenance] Neo4j nodeJS OGM(object-graph mapping) abstraction layer
Stars: ✭ 54 (-14.29%)
Mutual labels:  neo4j
neo4j-faker
Use faker cypher functions to generate demo and test data with cypher
Stars: ✭ 30 (-52.38%)
Mutual labels:  neo4j
assertj-neo4j
Assertions for Neo4J
Stars: ✭ 13 (-79.37%)
Mutual labels:  neo4j
neo4j-jdbc
JDBC driver for Neo4j
Stars: ✭ 110 (+74.6%)
Mutual labels:  neo4j
Neo4j Framework
GraphAware Neo4j Framework
Stars: ✭ 247 (+292.06%)
Mutual labels:  neo4j
neo4j-migrations
Automated script runner aka "Migrations" for Neo4j. Inspired by Flyway.
Stars: ✭ 82 (+30.16%)
Mutual labels:  neo4j
angular-neo4j
Neo4j Bolt driver wrapper for Angular
Stars: ✭ 18 (-71.43%)
Mutual labels:  neo4j
neo4j doc manager
Doc manager for Neo4j
Stars: ✭ 95 (+50.79%)
Mutual labels:  neo4j
database-journal
Databases: Concepts, commands, codes, interview questions and more...
Stars: ✭ 50 (-20.63%)
Mutual labels:  neo4j
PyEmbeo
graph embeddings for neo4j in python
Stars: ✭ 25 (-60.32%)
Mutual labels:  neo4j
ComplexNetwork
中国娱乐圈关系挖掘,可以快速的查询明星之间的关系。This is a complex network of course assignments. The realization of the relationship analysis and visualization of China's entertainment industry, you can quickly query the relationship between the stars
Stars: ✭ 24 (-61.9%)
Mutual labels:  neo4j
twitch-project
A weekly stream in which I build a web application with Neo4j and Typescript
Stars: ✭ 78 (+23.81%)
Mutual labels:  neo4j
elixir ravelry
Elixir API using Neo4j database for ElixirConf 2017 talk
Stars: ✭ 21 (-66.67%)
Mutual labels:  neo4j
Graph Data Science
Source code for the Neo4j Graph Data Science library of graph algorithms.
Stars: ✭ 251 (+298.41%)
Mutual labels:  neo4j
graphql
A GraphQL to Cypher query execution layer for Neo4j and JavaScript GraphQL implementations.
Stars: ✭ 397 (+530.16%)
Mutual labels:  neo4j
grandcast.fm
A podcast application built using GRANDstack
Stars: ✭ 50 (-20.63%)
Mutual labels:  neo4j
plume
Plume is a code property graph analysis library with options to extract the CPG from Java bytecode and store the result in various graph databases.
Stars: ✭ 53 (-15.87%)
Mutual labels:  neo4j
CyFHIR
A Neo4j Plugin for Handling HL7 FHIR Data
Stars: ✭ 39 (-38.1%)
Mutual labels:  neo4j

paradise-papers-django

A simple Django web app for searching the Paradise Papers dataset backed by Neo4j

Welcome to Paradise Paper Search App’s Django + Neomodel Tutorial!

Requirements

  • Python 3.4+
  • Django 2.2+
  • neo4j 3.5+, 4.0
  • neo4j-driver 4.1.1
  • neomodel 4.0.4

Quickstart

First create an sandbox database, make sure to select Paradise Papers by ICIJ under Pre-Built Data, copy the credentials: username, password and bolt URL, you are going to need that later.

# Clone this repository
git clone https://github.com/neo4j-examples/paradise-papers-django

# Go into the repository
cd paradise-papers-django 

# active your [virtual environment](https://docs.python.org/3/tutorial/venv.html) and install your dependencies
cd paradise_papers_search
pip install -r ../requirements.txt

# Run the app
export DATABASE_URL=bolt://<username>:<password>@<address>:7687 # update with the credentials from your sandbox database.
python manage.py runserver --settings=paradise_papers_search.settings.dev

Registering Models in the Admin

In paradise_papers_search/fetch_api/admin, add the models you would like to explore using the admin:

from django.contrib import admin as dj_admin
from django_neomodel import admin as neo_admin

from .models import Entity

class EntityAdmin(dj_admin.ModelAdmin):
    list_display = ("name",)
neo_admin.register(Entity, EntityAdmin)

Create the admin superuser:

./manage.py migrate
./manage.py createsuperuser

Run the app!

python manage.py runserver --settings=paradise_papers_search.settings.dev

Start searching at http://127.0.0.1:8000/

View the admin at http://127.0.0.1:8000/admin

While testing locally you may want to do export ALLOWED_HOST=*

Quick Heroku Deployment with Neo4j Sandbox

Create an sandbox database, make sure to select Paradise Papers by ICIJ under Pre-Built Data. copy the database's username, password, and bolt URL.

Create a Heroku app, (for example, paradise-papers) Go to the app's settings and add the following config vars: ALLOWED_HOST : paradise-papers.herokuapp.com DATABASE_URL: the credentials from your sandbox database in the following format bolt://user:password@ip:port

Clone the repository and navigate into the directory, add Heroku as a remote, and push to Heroku:

git clone [email protected]:neo4j-examples/paradise-papers-django.git
cd paradise-papers-django
git remote add heroku https://git.heroku.com/paradise-papers.git
git push heroku master

View your app at the URL you specified earlier.

alt text


alt text


alt text


alt text


alt text

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].