scala-notebook
scala-notebook copied to clipboard
TODO list (should probably move to wiki or something)
(These are mostly by @krisher from a while back)
UI
- Horizontal code / output layout (side by side instead of current top/bottom)
- Config and init scripts editable (at least viewable) in web UI
- Notebook grouping in dashboard
- Shared / Collaborative editing
- Notebook overview (e.g. list of variables/values, functions)
IDE features (integrate with Ensime?)
- Compile error underlines
- Hyperlink to source (also in external editor/IDE?)
- Expression type info (e.g. ctrl-q in IntelliJ)
- Better auto-complete
- Scaladoc hovers
Multi-user / distributed kernels
- Per-kernel configuration
- Multi-user auth / security
- Distributed Akka (spawn VM's over a cluster?)
- Better separation between SN server and kernel management system
- Restore IPython-like cluster interface?
Build / Deployment
- Propagate RequireJS (curl.js) through non-3rd party javascript (the IPython sourced stuff), or make sure this is minified into a single file.
- Compile & Lint javascript
- Javascript testing framework (qunit + test driver?)
- Improve development workflow (more play-like?)
Library updates
- Unfiltered -- update or switch?
- Akka to 2.1
- Scala 2.10
Other
- Replace REPL with something else...
- The way REPL holds state is simultaneously useful and not exactly what we want... In an ideal world we could compile at the cell level, and track dependencies across cells.
- Pure scala representation of notebooks (round trip editing)
- Proper use of typesafe config (reference config + namespaces)
- Multiple notebook directories
- Etag / improved cache control for static resources
I've been thinking about building an adapter so that I can bring SN in as a Play module for an existing application, but your TODO items...
Improve development workflow (more play-like?)
Unfiltered -- update or switch?
...make me think that maybe an adapter isn't bold enough and that you might want to switch to Play completely :) What's your guys' thinking on this?
@copumpkin the 2.10 repl is really usefull. A friend of mine is doing some experiment with it ( scala worksheet in the browser ). I will try to merge it on my scala 2.10 branch soon.