Geppetto is an open-source platform to build web-based applications to visualize and simulate neuroscience data and models.
If you want to play with a demo application built with Geppetto just visit https://live.geppetto.org.
The demo application is available in this repository which you can fork to build your own. Every Geppetto application has an npm dependency on geppetto-client which makes all the frontend Geppetto components and infrastructure available to the application. A Geppetto application can be deployed on different backends based on Java (via Eclipse Virgo) or Python (via Jupyter Notebook or Django).
The Java backend is the reference backend implementation and is used in client-server deployments of Geppetto. The Java backend is modular allowing each deployment to be customised only with the relevant bundles.
- Domain Specific
Python Backend (working prototype, in development)
Python backends are being developed both on top of Django and as a Jupyter Notebook extension. The Jupyter extension allows the user to host a Geppetto application inside a Jupyter Notebook environment. The application will talk to the Python kernel of the notebook which will act as a backend. Client-server deployments based on the Jupyter Notebook extension are also possible using Jupyter Hub.
All Python backends will reuse pyGeppetto as the main library. pyGeppetto contains the code to work with a Geppetto model and to implement the REST and Websockets APIs which is independent of the specific server (e.g., Django, Jupyter, etc.).
Node.js Backend (proof of concept)
Geppetto is released under the MIT license.