Skip to content

Latest commit

 

History

History
90 lines (60 loc) · 4.04 KB

index.rst

File metadata and controls

90 lines (60 loc) · 4.04 KB

Jupyter

The Jupyter Notebook is a web application for interactive data science and scientific computing. It allows users to author documents that combine live-code with narrative text, equations, images, video and visualizations. These documents encode a complete and reproducible record of a computation that can be shared with others on GitHub, Dropbox and the Jupyter Notebook Viewer.

The following is an overview of the documentation for the various open source projects in the Jupyter and IPython organizations.

.. toctree::
    :maxdepth: 1

    install
    config
    system
    data_science

Applications

The Jupyter Applications provide interactive computing environments across a wide range of programming languages for scientific computing, data science and analytics.

  • Jupyter Notebook: web-based application for authoring documents that combine live-code with narrative text, equations and visulizations.
  • Jupyter Console: terminal based console for interactive computing.
  • Jupyter QtConsole: Qt application for interactive computing with rich output

Kernels

Kernels are separate processes that sit behind the Jupyter user interfaces and run code in a particular programming language.

IPython is the reference Jupyter kernel, providing a powerful environment for interactive computing in Python.

  • IPython Kernel: interactive computing in Python.
  • ipyparallel: lightweight parallel computing in Python with seamless notebook integration.
  • ipywidgets: interactive widgets for Python in the Jupyter Notebook.
.. seealso::

   `Jupyter kernels <https://github.com/ipython/ipython/wiki/IPython-kernels-for-other-languages>`_
      A full list of kernels available for other languages

Working with notebook files

Notebooks are interactive documents that combine live code, narrative text (markdown), visualizations and other rich media. The following projects allow the programmatic conversion and manipulation of notebook documents.

  • nbconvert: convert notebooks to static formats such as HTML, Markdown, LaTeX/PDF and reStrucuredText.
  • nbformat: work with notebook documents programmatically.

Education

The following projects are focused on addressing the pain points of using the Jupyter Notebook in educational settings.

  • nbgrader: tools for managing and grading notebook based assignments.

Deployment

These projects are being developed to support deploying the notebook in various contexts that include multiuser capabilities and secure/scalable cloud deployments.

  • jupyterhub: multi-user notebook for organizations with plugglable authentication and scalability.
  • jupyter-drive: store notebooks on Google Drive.
  • nbviewer: share notebooks as static HTML on the web.
  • tmpnb: temporary, transient notebooks in the cloud.
  • dockerspawner: deploy notebooks for jupyterhub inside docker containers.
  • tmpnb-deploy: deployment tools for tmpnb.

Architecture

The following projects are lower level utilities used to build custom applications with the Jupyter architecture.

  • jupyter_client: the specification of the Jupyter message protocol and a clent library in Python.
  • jupyter_core: miscellaneous utilities and core functionality.