[IPython-dev] Jupyterhub-based CMS?

Doug Blank doug.blank at gmail.com
Fri Oct 24 12:16:48 EDT 2014

On Fri, Oct 24, 2014 at 10:34 AM, Nicholas Bollweg <nick.bollweg at gmail.com>

> A thing I have wanted since finding out about both projects is notebooks
> as a fundamental building block of content in Apache Allura
> <https://allura.apache.org/>. You may know Allura's primary commercial
> install and main contributor, sourceforge <http://sf.net>. It is,
> unsurprisingly, Apache licensed.
> Allura's focus is providing open source tools for teams building open
> source, so it is based on users, groups, and projects, and code. Into each
> project, its admins can add any number of tools: tickets, wikis, blogs,
> forums, git/hg/svn repos, subprojects, chat. Every project immediately has
> search and an API. It has configurable usage analytics.  It can import
> project data from a large number of other project management tools. Text is
> markdown all over, and has nice features like ticket linking, etc. Writing
> new tools is pretty easy: here's a template
> <http://sourceforge.net/projects/skelallura/> I made a while ago.
> Allura is written in TurboGears, which is kind of showing its age, but it
> uses classical MVC patterns, Jinja2, etc. so it wouldn't be that much
> different than tornado: presumably, jupyter would be run as a second
> server, anyway. It has customizable themes, but there are not many
> <https://opensourceprojects.eu/> real re-skins in the wild. Some branded,
> scientist-focused design love here would be amazing.
> Here are some specific integration ideas (and challenges):
>    - I would see notebooks supplanting the wiki and blog tools (which are
>    already markdown-based), as well as providing an entirely novel, multiuser
>    compute environment with any number of kernels, as handled by jupyterhub.
>    - Since a lot more assumptions would be in place, it would be much
>    more reasonable to have an "app store" approach to automating package
>    management for both the installed packages available to the current kernel,
>    as well as what is installed in the notebook javascript environment.
>    - While runtime notebooks could be persisted to MongoDB, files, or
>    whatever long-term, pure notebooks, or better still notebooks + data + a
>    snapshot of the container, could be stored in repos. This would be a boon
>    for, say, setting up assingments: click on a link, you are using a live
>    machine that is an exact copy of what a TA set up.
>    - A light wrapper around something like runipy
>    <https://github.com/paulgb/runipy>, conda-launch
>    <https://github.com/conda/conda-launch>, etc. would make building
>    reusable data workflows lovely.
>    - Things like nbconvert --slides and live_reveal
>    <https://github.com/damianavila/live_reveal/tree/master/livereveal>
>    would make crafting talks more discoverable and reusable than any previous
>    solution, and could be nicely configured to ensure that a whole project has
>    a consistent theme for slides which can be regenerated at any time.
>    - Thinking about directories of notebooks, one could imagine compiling
>    a whole e-book or mobile app... just by hitting a URL.
> I'd love to get involved with an effort like this, and might even be able
> to get the day job interested if we thought we could get some funding to do
> it... there are 100 ways one could spin this, either as an LMS, a data
> integration environment, research platform, communication hub, or some
> other goal.

Great ideas here! Yes, I should have mentioned wikis, books, hubs, and just
as a repository of reproducible experiments, with data. Not all of these
ideas need to be embedded in such a component-based webapp framework. But
such a project would seem to be the next logical step.

I'd also love to discuss such a project with like-minded folks. A million
questions and issues come to mind. I guess we can first see what kind of
interest there is, and then have some conversations on a separate mailing


> On Fri, Oct 24, 2014 at 9:13 AM, Doug Blank <doug.blank at gmail.com> wrote:
>> Devs,
>> If you were going to build a full web application (with components like
>> comments, index, sitemap, search, etc) for, say, an on-line journal, blog,
>> or course website, that was based on jupyterhub and notebooks what would
>> you write it in?
>> Many of those functions exist in full content-management systems (CMS)
>> like Drupal or Wordpress. There is also support for building a CMS from
>> tools like Django (which is written in Python).
>> Jupyterhub is written in Tornado. As far as I see, there aren't drop-in
>> CMS-like components for Torando.
>> So, would you try to integrate jupyterhub into an existing CMS? Or build
>> one from tools like Django + Torando? Or create a new project especially
>> for jupyterhub? Or is there another option?
>> -Doug
>> _______________________________________________
>> IPython-dev mailing list
>> IPython-dev at scipy.org
>> http://mail.scipy.org/mailman/listinfo/ipython-dev
> _______________________________________________
> IPython-dev mailing list
> IPython-dev at scipy.org
> http://mail.scipy.org/mailman/listinfo/ipython-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ipython-dev/attachments/20141024/352c1014/attachment.html>

More information about the IPython-dev mailing list