Hi,

Zeppelin currently has feature that creates form dynamically. (
http://zeppelin.incubator.apache.org/docs/dynamicform.html)
It's only supporting simple input text and dropdown list.

Recently Damien and Me discussed about ability to create rich GUI, and i'm
bringing the discussion to the online.

Basic idea is adding '%angular' to display system
<http://zeppelin.incubator.apache.org/docs/display.html>.
Like currently supported '%html' that prints output as html code,
'%angular' displays output as angular view. For example,

println("""%angular Your name is {{ z.name }}. <a
ng-click="z.onClickOkay()">ok</a>""")

will compiled and rendered as angular view code. For variable (z.name) and
function (z.onClickOkay()), we can develop some kind of Js(angular
controller) - JVM gateway so user will able to bind Object or Function into
the angular scope, like

val name = "Zeppelin"
z.angularBind("name", name)

def onClickOkay() = {
    ...}
z.angularBind("onClickOkay", onClickOkay)


In this way, user can implement their own customized visualizations and
user interface without (almost) any limitation.

What do you think?
I'd appreciate any feedback!

Best,
moon

Reply via email to