Skip to main content

Full-Stack Data/Knowledge Management with Neo4j version 4

Project description

Brain Annex - a full technology stack on top of GRAPH DATABASES

This is a mono-repository of:

  1. The "Brain Annex" python library
  2. The "Brain Annex" web app (backend and frontend)

Graph databases currently supported:

  1. Neo4j, version 4.4 (the final release of major version 4)
  2. Neo4j, version 5.26 (the final release of major version 5)
  3. We expect to later support others, possibly Memgraph and AWS Neptune

Do you only care about the python library?

Simply:

  • pip install brainannex-neo4jv4
    or
  • pip install brainannex-neo4jv5
    (based on which major version of Neo4j you use.)
    Nothing else to do!

Then use it with imports such as:
from brainannex import GraphAccess
(notice that we are just saying brainannex here, NOT the full install name!)

IMPORTANT for installing the web app - to switch between supported databases:

  1. Must change the database driver, in the first line of requirements.txt
  2. Must comment/uncomment the appropriate version lines in the brainannex/__init__.py file, for the InterGraph module, which is database-specific.

Website: https://BrainAnnex.org

Change Log

Brain Annex's Technology Stack (Overview)

BRAIN ANNEX PYTON LIBRARY

From lower to higher levels:

  • InterGraph library (low-level, database-specific layer)

  • GraphAccess library (python interface offering many services)

  • GraphSchema library (optional Schema layer)

  • plus several other specialized high-level libraries


What is a "Schema layer"?

A schema layer harmoniously brings together the best of the flexibility ("anything goes!") of graph databases, and the "law and order" aspect of relational databases!


BRAIN ANNEX WEB APP

  • Python/Flask (for web API, and web app pages)

  • Vue2.js

EXAMPLE of use case : Multimedia Knowledge Representation and Management

Motivation and overview

What are Neo4j/Graph Databases, and why do they matter?

If you're new, here's a gentle brief intro.

Brain Annex's Technology Stack (Details)

Brain Annex may be used as a standalone web app, or used to power other web apps.
The libraries that are the bottom layers may also be used independently.

Brain Annex Technology Stack

How to set up and use Brain Annex WEB APP

(Note: if you only care about the python library, just pip install it! This section doesn't apply to you!)

The underlying graph database and the Brain Annex web app may be installed either locally or on a remote server.

The database and web app may reside on the same or different machines.

SETUP

INSTRUCTIONS

EXAMPLES of Schemas available for import

(For instructions on how to import the Schemas, see the setup page, above)

EXAMPLE 1 - the available default Multimedia Content Management System

The ROOT node for the Categories is shown in blue at the top.

Minimal_Schema_plus_ROOT_category.png


EXAMPLE 2 - same as example 1, but with sample extra Classes (representative of user-added schema)

The diagram below is split in 2 parts, for readability.

"chem" is an example of a custom Class.

Classes and Properties in Brain Annex - Non-record types

The following second half of the diagram shows the remainder of the Schema, detailing Classes that are instances of the "Records" Class. Most of the items in this diagram are examples of typical user-added schema:

Classes and Properties in Brain Annex - Record types

Major components

  • GraphAccess : a library to connect to Neo4j with python. It provides many services. Link

  • GraphSchema : a higher-level schema-based library on top of GraphAccess. Link
    Article explaining this layer

  • CK Editor : open-source JavaScript library to implement an online HTML Editor.
    Website. (Note: Brain Annex uses version 4 of the CK Editor)

  • API : the endpoints appear in this file

  • Web pages : the pages generated by Brain Annex are listed in this routing file

  • Navigation bar : Brain Annex can be used either as a standalone web app, or integrated with another site.
    The navigation is implemented in this package

Project website: https://BrainAnnex.org

The lead author of Brain Annex can be reached on LinkedIn

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

brainannex_neo4jv4-5.0rc7.tar.gz (163.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

brainannex_neo4jv4-5.0rc7-py3-none-any.whl (171.8 kB view details)

Uploaded Python 3

File details

Details for the file brainannex_neo4jv4-5.0rc7.tar.gz.

File metadata

  • Download URL: brainannex_neo4jv4-5.0rc7.tar.gz
  • Upload date:
  • Size: 163.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.10.12

File hashes

Hashes for brainannex_neo4jv4-5.0rc7.tar.gz
Algorithm Hash digest
SHA256 c5a7e4d50da1838bdac7b6b2946b6874a1a36620b32f92dcf8a39f8a3438c6ae
MD5 522cfcb34cfb898c74b40e8b9cce5e0c
BLAKE2b-256 4706d72b8eb9d13a8b22ef819e1231e8cab04602727dd9804ad2f8e09901f177

See more details on using hashes here.

File details

Details for the file brainannex_neo4jv4-5.0rc7-py3-none-any.whl.

File metadata

File hashes

Hashes for brainannex_neo4jv4-5.0rc7-py3-none-any.whl
Algorithm Hash digest
SHA256 7d16bfd2393552bde256fe8a9a9d63bdb86558f18798829a45d5d984b9d6277a
MD5 9b9f0521e7031a88922354795f46a096
BLAKE2b-256 29ccc7d09fbd1c52d17768534b83bc4b640c22635f62b20f334563db8806a684

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page