Keymaker - Recommendations Framework and Cypher Query Pipeline

Keymaker serves as an API layer that simplifies the process of connecting to a Neo4j database, currently it supports only versions 4.5 and 5.x of Neo4j. It features a user interface for establishing database connections and for building analytical query pipelines, referred to as engines, using Cypher. These engines are customized for specific business use cases. With Keymaker, each engine or query pipeline you develop is automatically equipped with a GraphQL API endpoint. This streamlines the development of user interfaces using frameworks like React, by eliminating the need for manually defining type definitions, queries, and mutations, allowing developers to concentrate on the business logic.

Keymaker High Level Architecture

Keymaker’s architecture is built around three core components: the Admin Dashboard, the Admin API, and the Engine API. Together, these elements offer a comprehensive interface for seamless framework interaction:

  • Admin Dashboard: It is a user-interface for establishing database connections, constructing analytical pipelines referred to as "engines" within Keymaker, and writing Cypher queries.

  • Admin API: This API facilitates user interaction with the framework.

  • Engine API: This API connects with your Neo4j database and exposes an endpoint which executes the engine

The following diagram demonstrates this architecture

keymaker architecture

User Activity Flow Diagram

The following diagram depicts a user’s journey within the Keymaker application. This flow diagram encapsulates the sequential actions taken from initial login to the final execution of a query pipeline. Users navigate through a streamlined process starting at the Keymaker Admin UI, moving through database connection setups, defining query pipelines, and culminating in the execution of complex queries facilitated by an API key

user activity flow diagram 3

Note : A detailed step by step guide is available from creating database connections to execution of query pipelines in the Github README

Installation

  • Check out the code from the GitHub Repository

  • Ensure that you have Node.js on your machine

  • Follow the instructions in the Keymaker project README

Functionality Includes

  • Neo4j Database Integration: Connects directly with Neo4j databases, specifically supporting versions 4.5 and 5.x.

  • Analytical Query Pipeline Creation: Keymaker interface allows you to create analytical query pipelines (engines) using Cypher, tailored for specific business use cases.

  • Automatic GraphQL API Endpoint: Automatically provides a GraphQL API endpoint for each developed engine or query pipeline.

  • Focus on Business Logic: Enables developers to concentrate on business logic rather than the technical intricacies of API and database integration.

  • Customized Engines: Allows for the customization of engines to fit unique business requirements.

Documentation

Documentation for this library is available link: here.

See also the GitHub Repository.

Authors

Snehal Maid

Community Support

Neo4j Online Community

Source

GitHub

Issues

Issues

Documentation

Documentation

Videos & Tutorials

How to Install Keymaker on Your Local Machine: A Step-by-Step Tutorial

Quick Start: Verify Your Keymaker Setup and Build Your First Query Pipeline

Keymaker Features Overview