GremlinBin (beta) is here. An online Gremlin "fiddle"

665 views
Skip to first unread message

Dylan Millikin

unread,
Mar 16, 2016, 2:33:18 PM3/16/16
to gremli...@googlegroups.com, d...@tinkerpop.apache.org
Hey guys,

I wanted to announce that www.gremlinbin.com is prime for beta. 

GremlinBin is essentially an online console/sandbox for you to test run your Gremlin queries, then save them and share them with other users via links. Think of it as a jsFiddle or pasteBin for Gremlin.

It's still in it's early stages so there is no mobile support and there are annoyingly verbose errors (if you encounter any; to help with reporting to github). Both of these will go with future updates.

I will however guaranty that the links to your "bins" will not break with future updates so feel free to use them in blogs/emails/etc.
Here's one to give you an idea : http://www.gremlinbin.com/bin/view/56e9a41538639

Let me know what you think. And feel free to open issues on github if you have any feature requests (or are encountering glitches).

Big thanks goes to JB Musso for his work on the js driver, Stephen for putting up with me and the others for their valuable feedback. 

Cheers.


Stephen Mallette

unread,
Mar 16, 2016, 2:49:25 PM3/16/16
to Gremlin-users, d...@tinkerpop.apache.org
This is a very cool piece of work. Thanks for doing this. Perhaps, I am now free of Dog House! :D

And very good work from The Baptist on the js driver to enable this. Appreciated.

--
You received this message because you are subscribed to the Google Groups "Gremlin-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gremlin-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gremlin-users/CAK-m_Ky9d0G9MnieNtb-W5s-F8gVW6MTOmVgVEp-bj6DROpySA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Daniel Kuppitz

unread,
Mar 16, 2016, 3:50:06 PM3/16/16
to gremli...@googlegroups.com
Hey Dylan,

nice work! One question: Do bins have a TTL or do the live forever? If they live forever, then I can already see a lot of my future samples for the mailing list going into GremlinBin.

Cheers,
Daniel


Cosmic Interloper

unread,
Mar 16, 2016, 4:00:09 PM3/16/16
to gremli...@googlegroups.com
Is there any chance for auto-complete support like the gremlin console?

this is really cool

Dmill

unread,
Mar 16, 2016, 4:24:56 PM3/16/16
to Gremlin-users
@Daniel : No TTL. All the current bins live forever. I will eventually give users the option to expire their bins but default is never. Of course in a doomsday scenario (major crash etc.) the bins may need to be rolled back to the latest backup (done every day). But that's it.

@pancakes : I'm not sure what the possibilities are for this but I can look into that for a future update. Feel free to start an issue on github so that I don't lose track of it : https://github.com/PommeVerte/gremlin-bin/issues 

Dylan Millikin

unread,
Mar 16, 2016, 4:28:36 PM3/16/16
to d...@tinkerpop.incubator.apache.org, Gremlin-users, d...@tinkerpop.apache.org
@Dylan : Thanks for the catch, I fixed it.
Currently the viz just highlights selected elements (with some understanding of paths). I've thought about implementing a "visual traversal" animation but I would need to make a few adjustments first. Definitely on my todo list though.

On Wed, Mar 16, 2016 at 3:07 PM, Dylan Bethune-Waddell <dylan.beth...@mail.utoronto.ca> wrote:
Wow - that is really cool. Nice work!

I noticed a typo under the "Learn" tab in the italicized text, says "ressources" instead of "resources" fyi.

Man that visualization under the query is sweet, where you planning to go for something like the Gephi plugin's "visual traversal" where the execution of each step is highlighted?

________________________________________
From: Stephen Mallette <spmal...@gmail.com>
Sent: Wednesday, March 16, 2016 2:49 PM
To: Gremlin-users
Cc: d...@tinkerpop.apache.org
Subject: Re: [TinkerPop] GremlinBin (beta) is here. An online Gremlin "fiddle"

Mark Henderson

unread,
Mar 16, 2016, 4:28:46 PM3/16/16
to Gremlin-users, d...@tinkerpop.apache.org
This is very cool. Thanks. I mentioned something like this a week ago here and I've been thinking about it since (didn't get anything started though). One thing that I got hung up on was security. Can this allow for arbitrary Java code execution? Pasting in 

def x = new Date(); x

seems to work. Is that a valid concern?

I'd like to contribute once you get the source on github.

Jason Plurad

unread,
Mar 16, 2016, 5:00:42 PM3/16/16
to Gremlin-users
This is awesome, Dylan.

Echoing what Daniel mentioned, I think bins will be huge as a Gremlin learning tool. If the site keeps some metrics on page views or upvotes, we have an instant and interactive FAQ for common Gremlin syntax questions.

Probably more of a long term question, have you thought about how to incorporate OLAP traversals?


--
You received this message because you are subscribed to the Google Groups "Gremlin-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gremlin-user...@googlegroups.com.

Dmill

unread,
Mar 16, 2016, 5:24:04 PM3/16/16
to Gremlin-users
Glad you guys are enjoying it 

@Mark It does allow for arbitrary Java execution but within a set of white listed elements. It's been and still is a valid concern so I'm always double checking things here. But if you ever think of or find anything I missed shoot me an email. I'm also concerned that things are too restrictive, there's an issue open for people who find that they can't execute some queries because of the restrictions : https://github.com/PommeVerte/gremlin-bin/issues/1

@Jason I have analytics plugged in so that can give some feedback. I can also compile the most common queries that lead to errors, most common saves etc. With that said an upvote system is a pretty sweet idea.

Regarding OLAP traversals. I had put it on my todo list but haven't given it any thought beyond knowing I want some support for it. I need to familiarize myself a little more with it first. 

Stephen Mallette

unread,
Mar 17, 2016, 7:25:43 AM3/17/16
to d...@tinkerpop.incubator.apache.org, Gremlin-users, d...@tinkerpop.apache.org
Dylan, there is this notion of permanence to these gremlin pastes - what happens when there is a breaking API change between versions? Is that somehow accounted for?

On Wed, Mar 16, 2016 at 6:39 PM, Jonathan Ellithorpe <j...@cs.stanford.edu> wrote:
Very cool! Been waiting for something like this :)

BTW some quick user feedback... on the "new" page:

http://www.gremlinbin.com/bin/new

After I select graph "modern" from the drop down list, it's not clear that
I need to click "submit" beneath the text box for creating my own graph to
go to the console view. Would be more intuitive if selecting an item from
the drop-down list automatically took me to the console, or there was a
"go" button next to this list.

Dylan Millikin

unread,
Mar 17, 2016, 10:21:03 AM3/17/16
to gremli...@googlegroups.com
@Jonathan Thanks for the feedback, I think that's a really good idea, I'll look into implementing it.

@Stephen Not at the moment. I have plans to add options for the db version on bins but I'm still unsure of the best way to do this. If you have any ideas I'm all ears. Figured I had until 3.2.0 to figure it out.

--
You received this message because you are subscribed to a topic in the Google Groups "Gremlin-users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/gremlin-users/rU-Q02ZqQ8k/unsubscribe.
To unsubscribe from this group and all its topics, send an email to gremlin-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gremlin-users/CAA-H43-fHHb1BiR_KpVkdezS4%3Dv_Wz1OpQEw57GuCJymSgwZ-Q%40mail.gmail.com.

Stephen Mallette

unread,
Mar 17, 2016, 10:31:44 AM3/17/16
to Gremlin-users
you mistake me for a bringer of solutions - i just do problems. :)

not sure how you would handle that. you'd need to pin a gremlin version to each paste and then only execute it in a JVM that was running that version of gremlin server. i guess you could run multiple gremlin server versions behind the scenes and route the query to the right one??? i dunno....

--
You received this message because you are subscribed to the Google Groups "Gremlin-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gremlin-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gremlin-users/CAK-m_Kzvt-JQWS9N6_ck34%3DVREgKY7ac94aCOJ1%3DkK3rjCPD%3Dw%40mail.gmail.com.

Dylan Millikin

unread,
Mar 17, 2016, 10:46:39 AM3/17/16
to gremli...@googlegroups.com
That was my original thought. But after a few versions it's going to become quite expensive. I was wondering if implementing a custom class loader might allow me to bundle older versions of the stack with my plugin and I could cherry pick that way. No clue if this would work though.
The other option would be OSGi I guess?

Stephen Mallette

unread,
Mar 17, 2016, 11:26:08 AM3/17/16
to Gremlin-users
i guess how expensive it becomes is dependent on traffic/usage. you could run multiple gremlin servers on the same server different ports, but yeah - kind of a stinky solution.

Jean-Baptiste Musso

unread,
Mar 17, 2016, 7:42:02 PM3/17/16
to gremli...@googlegroups.com, d...@tinkerpop.apache.org
Well done! This is a very nice piece of work and was much needed.
Thanks for doing this Dylan.

I agree that the ability to visualize a traversal step-by-step would
be a really nice addition. Also, it could help to have an option to
show little-stacked-Gremlin-traversers on each traversed graph
elements, as often pictured in the TP3 documentation. Oh, and maybe
visualize Gremlin sacks as well :-).

By the way, is there any way we can contribute to all or parts of the
project (especially the front-end/JavaScript parts)?

Jean-Baptiste
> --
> You received this message because you are subscribed to the Google Groups
> "Gremlin-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to gremlin-user...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/gremlin-users/CAK-m_Ky9d0G9MnieNtb-W5s-F8gVW6MTOmVgVEp-bj6DROpySA%40mail.gmail.com.
> For more options, visit https://groups.google.com/d/optout.
Jean-Baptiste Musso
> --
> You received this message because you are subscribed to the Google Groups
> "Gremlin-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to gremlin-user...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/gremlin-users/CAK-m_Ky9d0G9MnieNtb-W5s-F8gVW6MTOmVgVEp-bj6DROpySA%40mail.gmail.com.

Dmill

unread,
Mar 18, 2016, 11:27:30 AM3/18/16
to Gremlin-users, d...@tinkerpop.apache.org
Thanks for the feedback! There are a few moving parts to this (java, js, php). I've got a bit of work to do to modulate everything and clean it up for contributions. But it's in the works. 

Raj

unread,
Jun 30, 2017, 3:08:11 AM6/30/17
to Gremlin-users, d...@tinkerpop.apache.org
I was trying to use gremlinbin but it was either not running my commands or if it did then was showing stackoverflow error..... 

Robert Dale

unread,
Jun 30, 2017, 7:53:45 AM6/30/17
to gremli...@googlegroups.com, d...@tinkerpop.apache.org
I recommend clicking on 'Issues' which will take you to this link https://github.com/PommeVerte/gremlin-bin/issues

Robert Dale

--
You received this message because you are subscribed to the Google Groups "Gremlin-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gremlin-users+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gremlin-users/a1597eff-aa21-4eaf-8d69-a4c81c38931c%40googlegroups.com.

Dylan Millikin

unread,
Jun 30, 2017, 10:40:21 AM6/30/17
to gremli...@googlegroups.com, d...@tinkerpop.apache.org
Hey guys,

Sorry I've been so absent over the past year I've been having a lot of personal issues. But I've been keeping a bit of an eye on things regardless and plan on making a proper comeback to bring everything up to speed.
I noticed JB had a few docker images going so I might use those to allow for different TP versions and remove sandboxing on gremlinbin.


Anyways, thanks for bringing this up by mail. It appears that I haven't gotten any of the github notifications for that repo seeing as there are some significantly old issues in there.

I've done the necessary corrections and things should be working again. 

Cheers.

Ray Scott

unread,
Aug 7, 2017, 7:34:44 AM8/7/17
to Gremlin-users, d...@tinkerpop.apache.org
This is brilliant! Any chance this will become an official Gremlin tool? I think it's one area where Neo4j has outshone others. If you had an official JS library with right-click introspection on vertices and edges it would be better than some commercial visualisation tools out there. 

Stephen Mallette

unread,
Aug 7, 2017, 7:51:31 AM8/7/17
to d...@tinkerpop.apache.org, Gremlin-users
GremlinBin is a tool developed by Dylan Milikin who is a TinkerPop PMC member. He's also been good enough to host that application for the community as a way to "Try Gremlin". 

As for an "official" visualization tool, TinkerPop has generally formed the opinion over the years to stay away from developing visualization tooling and instead rely on third parties to build that kind of stuff. 
Reply all
Reply to author
Forward
0 new messages