integrate with IPython web notebook #10

bollwyvl opened this Issue Dec 7, 2012 · 0 comments

1 participant


Really may be a separate project.

Allow blockd3 to be used in IPython. Should require changes to IPython's
notebook.js and cell.js and probably textcell.js


nice front-end stuff, sometimes just for documentation, sometimes for frontend/backend modification of the thing itself. maps. a target for d3 stuff. whatever.

  • enabler:
  • representation: XML
  • challenges: there probably isn't a good way to represent the state of the javascript environment in a running kernel: thus, when you reopen a notebook, the current DOM state would not be accurate unless you run the right javascript cells again


initially, generating python code would be money... i think it would be pretty easy, and you can inject the other variables and procedures in the current kernel scope into the blockly document. adding a nice model of would make a lot of the data acquisition problems i have been experiencing trivial.

on the js side, the blockd3 stuff would be good here as well: SvgCells would be injected directly into the space, to give you a handy place from which to start.

  • enabler: Blockly
  • representation: XML
  • challenges:
    • you could transform blockly into raw python, but probably not the reverse
    • blockly needs a lot of real estate, so editing might become a modal thing.
    • storing non-blockly stuff twice (and having it not be typed in the python) could be a challenge... what happens to the blockly when you change another cell (e.g. destroying a variable or changing it's type)


Already wanted to do this anyway.


shameless self-promotion aside, reactive, model-based documentation would be great to add high-level insight to a notebook. real constraints that can be evaluated server-side would be mind blowing, alleviating my initial frustration with a pithy representation of bidrectional systems.


sliders and knobs, bound to variables? yes please

  • enabler: dunno... maybe start with jquery ui (it's already there)
  • challenges: dunno yet, just thought of it
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment