Hi there I need to setup an infrastructure for hosting notebooks as an extension to a MOOC platform based on edx : https://www.fun-mooc.fr/
In a nutshell, the objective is for a MOOC author to be able to add a notebook as part of its course, in a plugin of edx We have a running version of that, that was written 3 years ago by 2 colleagues, who have now gone to other projects Their implementation did the job perfectly during that time, and we have run quite a few MOOC sessions thanks to this It requires a major overhaul though, for various reasons, among which : was restricted to python2; could run only one course at a time; was using an old ipython engine; was not using docker; had php inside ... So; I am trying to come up with a proof of concept for a new implementation that would . of course still be compliant with the edx plugin . support several courses at the same time; each with its own docker image . and so, as a side effect, at least support python3, and anything else that has a docker image available The interface with edx is as simple as it gets; edx issues a URL containing a triple (course, student, notebook) and displays that in an iframe The expected behaviour is that each student has her own copy of the notebooks from the master published by the author Also the student copy is made the first time that she navigates to that notebook - as opposed to copying the whole course the first the student shows up. This is a requirement because a mooc is published week by week, so week one can start while week 7 is not yet written.. Also there is no student registration, essentially every request coming from the known IP addresses is considered valid and students get created on the fly if they are not yet known (typically several thousands of them for one course) So of course my first thought was jupyterhub; however it did not, at first sight, seem to fit too well, because * we have this notion of a course, i.e. a set of master set of notebooks - typically in a github repo * also, there is a need to catch spawner-related events - like start/stop the user's jupyter - which is supported in jupyterhub but also notebook-related events - like copy this notebook when it's requested - which seems harder to catch in jupyterhub Is there a way to do something like this building on jupyterhub, and if so how would I go about doing that ? -- You received this message because you are subscribed to the Google Groups "Project Jupyter" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/jupyter/3932bf8b-301b-4ae1-a806-3ba1dae83817%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
