Skip to content

romitagl/kgraph

Repository files navigation

KGraph

-- WIP -- Knowledge Graph Project -- WIP --

Description

This project aims at creating a knowledge database with hierarchical topic modelling.

An introduction to Knowledge Graphs: http://ai.stanford.edu/blog/introduction-to-knowledge-graphs.

A knowledge graph is a directed labeled graph in which we have associated domain specific meanings with nodes and edges. Anything can act as a node, for example, people, company, computer, etc. An edge label captures the relationship of interest between the nodes, for example, a friendship relationship between two people, a customer relationship between a company and person, or a network connection between two computers, etc.

Licensing

KGraph is based on open source technologies and released under the Apache License.

GitHub Actions

Lint Code Base

CI

CD Release

CD Release GitHub Pages

Demo KGraph Frontend

To play with KGraph without backend services, NOTE that topic search is not enabled and content is not persisted, you can use the GitHub Pages link.

KGraph - Animated gif demo

Quickstart

To setup a Docker environment from the latest release, please follow steps described at install-manifests/docker-compose.

Dependencies

Project Structure

  • backend : backend services
    • hasura : GraphQL Server + PostgreSQL Database
  • frontend : frontend services
    • vue : Vue JS (version 2) framework + Apollo Graphql Client
  • install-manifests : installation/deployment files
    • docker-compose : Docker Compose configuration to run the latest release of the full KGraph stack

Developer Notes

All the pull requests to master have to pass the CI check Super-Linter.

Naming Conventions

File & Folder names are separated by -, not _.

Super Linter

To setup locally the Super Linter follow these instructions.

Run check on the local folder:

docker run --rm -e RUN_LOCAL=true -e VALIDATE_JAVASCRIPT_STANDARD=false -e FILTER_REGEX_EXCLUDE=".*backend/hasura/schema/.*" -v `pwd`:/tmp/lint github/super-linter:v3.14.5

Copyright

Copyright (c) [2021] [Gian Luigi Romita]