GithubHelp home page GithubHelp logo

thi-ng / fabric Goto Github PK

View Code? Open in Web Editor NEW
155.0 155.0 6.0 2.81 MB

Signal/Collect inspired compute graph infrastructure for Clojure & Clojurescript

Home Page: http://thi.ng/fabric

License: Apache License 2.0

Shell 100.00%

fabric's Issues

visual query editor

Non-tech users would benefit from a graphical web UI to define queries by "drawing" out the graph patterns and qvars to be matched. The s-expr DSL is also well suited to be built up incrementally (e.g. via dropdowns and then filling in or visually linking placeholders to qvars/literals)

Ideas/tasks:

  • update results w/ each edit for direct feedback loop
  • display results as graph (super-imposed) or table
  • use thi.ng.geom.physics for graph layout

Prior art:

[Question] Is it possible to attach a unique label to a vertex

Hi,
Thanks for this library. It looks really interesting and powerful.

I am looking at the spreadsheet example and trying to understand the vertex collection functions. By the looks of it, (f/signal-map v) returns a map of type {<id> value ...}, where <id> is the vertex number in the graph.

Is it possible to change that <id> into something user specified, so that the end user can reason about which value is associated with which node without trying to look it up in the graph.

I hope this makes sense.

cheers

query subscriptions via WS/SSE

Users might want to subscribe to registered queries so that when result set is changing, a notification is pushed automatically via WS/SSE.

Ideas/tasks:

  • add new vertex type (SubscriptionVertex), where each vertex manages its own subscribers
  • add new handler to register/unregister subscriptions

add support for index groups (enable sharding)

Currently all facts are centrally indexed by the graph's N index vertices (e.g. subject, predicate, object). Not scalable.

Ideas/tasks:

  • add index group vertex/entity (set of N index vertices), each providing filter range (or rather predicate fn) of acceptable fact IDs and acts as facade to actual index vertices
  • redistribution/re-indexing when adding/removing/failing index groups
  • refactor fact vertex adding/removing

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.