Giter Club home page Giter Club logo

printemps's Introduction

Printemps

Printemps is my attempt at creating a GraphDB stack for Python. It's inspired from Tinkerpop stack and make a heavy use of it.

Here is a description of all the component:

  • printemps.core: core API, based on jnius bindings of Blueprints. You can use the API depending of the underlying backend for embedded or remote graphdb work.
  • printemps.server: It's similar in purpose to Tinkerpop's Rexster but doesn't make use of it. You can use it for your remote graphdb work.
  • printemps.client: It's a Python ORM for graphdb, it's similar in purpose to bulbflow an can be used with a Printemps server. Flask and Django client integration are planned.
  • printemps.query.gql: It's similar in purpose and spirit to Tinkerpop's Gremlin but doesn't make use of it. You can use it with embedded databases built with the core API or with the client library.
  • printemps.pql: It allows to query a remote graphdb using pure python functions and methods defined in a custom graph database class or vanilla printemps.core.Graph

The reason of the existence of this project are multiple:

  • There is no way to access graph databases from Python as an embedded database, except for neo4j, Printemps fixes that.
  • Sometime you need more than what Gremlin has to offer, Printemps offers through printemps.query all is needed to experiment new languages construct against a graph database in a similar architecture as the one used in Gremlin which can be later ported to Gremlin if you really need it.
  • Gremlin/Groovy is a nice language but doesn't have the same expresiveness and smooth learning curve Python can have, expectially Java doesn't have generators which even if not a beginner language construct can be quiet useful to do complex and efficiant lookups. printemps.pygq fixes one of the reasons why graphdb are not popular, their query langugages; pygq queries are plain old Python functions, which can be run against a remote printemps database.

printemps's People

Contributors

amirouche avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.