Skip to content

Projects using IPython

C.A.M. Gerlach edited this page Jul 30, 2018 · 37 revisions

Here is a brief list of other projects using IPython. If you know of more, feel free to add them, and if IPython contributes to a publication, please use our ready-made citation entry.

List of available kernels

The list of kernels for other languages has been moved here.

Scientific computing projects

  • The Nengo project for simulating large-scale neural systems is the first (that we know of) to integrate with the new IPython notebook.

  • The SimpleCV computer vision project ships with an integrated and customized IPython shell.

  • The JModelica system for dynamical systems simulation and modeling uses IPython and matplotlib for its interactive analysis and visualization.

  • The University of Colorado's Mechanical Engineering Department, as part of the Denver Aerosol Sources and Health (DASH) study, uses IPython to parallelize the data analysis.

  • The python binding of the igraph library for complex network research uses IPython for its interactive command-line interface.

  • The Sardana system, part of the ALBA Synchrotron Radiation Facility control system.

  • ASCEND embeds an IPython shell in its PyGTK GUI, using code from the Accerciser project. More details.

  • PyIMSL Studio, by Visual Numerics, is a set of tools that expose the classic IMSL numerical libraries to Python, and ships with IPython, NumPy, SciPy and matplotlib as the core Python environment.

  • The Trilinos project has Python bindings that can be used effectively via IPython, see these slides for details.

  • The PyRAF environment for astronomical image analysis, from the Space Telescope Science Institute, will include in its next official release an IPython-based interface. Currently (May'05) this functionality is only available via SVN PyRAF.

  • The CASA interactive shell from the National Radio Astronomy Observatory is built on top of IPython.

  • The Chandra Interactive Analysis of Observations (CIAO) environment from the Chandra X-Ray Observatory.

  • The Ganga system, developed at CERN for Grid job control for the LHCb and ATLAS experiments, uses IPython for its CLIP interface.

  • The ROOT project: a framework for data processing, born at CERN, at the heart of the research on high-energy physics. See for example this post.

  • SageMath, also known as the Sage mathematics software system, uses IPython for its interactive command-line interface and offers both the Jupyter notebook and the Sage notebook for its notebook interface. Note that the Sage notebook was an inspiration for the IPython notebook which became the Jupyter notebook.

  • Singular, another computer algebra system, also offers an IPython interface (Singular is also accessible as a SageMath subsystem).

  • The Pymerase project for microarray gene expression databases, exposes an IPython shell in its iPymerase mode.

  • The PyMAD project, where IPython is used to control a neutron spectrometer at the CEA-Grenoble and the Institut Laue Langevin in France. See Projects-using-IPython:-PyMAD for details.

  • The Square Kilometre Array South Africa project uses IPython as an advanced user interface to their radio telescopes, including the currently operational KAT-7 precursor array and the future MeerKAT telescope. A live demonstration of the interface can be seen in Maciej Fijalkowski's talk at PyCon 2011.

  • rdkit, a chemistry toolkit, integrates with IPython to display molecular structures.

  • The PyGrads Python interface to the OpenGrADS tool for access, manipulation, and visualization of earth science data.

  • The ECOOP project is using IPython to develop the software library for its use-case .

  • The AMPL modeling system for large-scale mathematical optimization can integrate with IPython with the help of AMPL magics provided by the IAMPL project.

  • QIIME (canonically pronounced "chime") stands for Quantitative Insights Into Microbial Ecology. QIIME is an open source software package for comparison and analysis of microbial communities, primarily based on high-throughput amplicon sequencing data (such as SSU rRNA) generated on a variety of platforms, but also supporting analysis of other types of data (such as shotgun metagenomic data).

  • KlustaViewa is a Python GUI software for the manual step of spike sorting, which aims at extracting spiking activity from raw extracellular multielectrode recordings. An IPython console can be opened in the program to let the user perform his own analyses on the data.

  • Beaker (source code) is a language-agnostic notebook UI that uses IPython kernels to power several of its backend languages and uses code from IPython's notebook viewer for the backend of its sharing service.

  • QtIPy is a GUI utility to enable automated running of IPython notebooks in response to file or folder changes and timers. Use it to generate automated reports and analysis for experimental data sets, output together with the code that made them.

  • Spyder is a cross-platform PyQt-based IDE combining the editing, analysis, debugging and profiling functionality of a software development tool with the data exploration, interactive execution, deep inspection and rich visualization capabilities of a scientific environment like MATLAB or Rstudio. Spyder is fully integrated with IPython and Qtconsole through its built in abilities to launch and work with IPython Consoles, and IPdb is linked to its GUI debugger. Spyder's IPython consoles also supports a number of configurable options, , can render plots inline with Matplotlib, and can easily connect to native, local or remote external kernels with full feature support, including a Variable Explorer for rich inspection and editing of objects in the IPython environment, a Help viewer which can retrieve and rich documentation from objects in the console, advanced IPython autocompletion and introspection functionality and a connection with Spyder's Editor to run lines, selections, code cells or files.

  • scikit-bio is an open-source, BSD-licensed, python package providing data structures, algorithms, and educational resources for bioinformatics.

  • EMPeror is a WebGL tool for visualizing high-dimensional spaces typically through techniques like principal coordinates analysis.

  • qiita (canonically pronounced cheetah) the QIIME databasing effort to enable rapid analysis of microbial ecology datasets. The Qiita repository is responsible for defining the data model and the Python API for interacting with a Qiita database. Qiita relies on IPython for parallel compute support.

  • WooDEM, environment for Discrete Element Modeling and multi-body dynamic,s uses IPython for interactive access to all internals of simulations (exposed from c++ via boost::python).

  • neuropy is a command-line based Python program for interactive analysis of sorted neuronal spike data, stimulus data, and LFP waveforms. neuropy embeds IPython within its main Qt window.

  • TheVirtualBrain ships IPython as its advanced / programmable interface, along with notebooks as documentation, e.g the tutorial on modeling epilepsy propagation.

Projects in economics and finance

  • fecon235 is a project for computational data tools in financial economics. As of 2015, we have an easy API to freely access data from the U.S. Treasury, Federal Reserve, SEC, CFTC, stock and futures exchanges. Such data is integrated together using pandas, and we have developed tools for time-series analysis. Open development is ongoing in the area of international markets, especially: oil, gold, and foreign exchange.

In teaching

Web frameworks and other systems

  • Scrapy, a web-scraping framework, uses IPython for its interactive shell if it's installed.

  • The pitz distributed task/bug tracking system.

  • Nicolas Rougier implemented a pyglet Python terminal that can optionally use IPython.

  • The Pylons web framework can optionally use IPython if installed.

  • As of Jan'06 (Changeset 1930, to be precise), IPython is the admin shell for the Django web framework.

  • You can use IPython to debug Zope and Plone, as explained in these two pages.

  • The Schevo database can be explored with IPython.

  • The Axon Shell in the BBC's Kamaelia project is an embedded IPython instance.

  • The emacs-ipython is an Emacs extension that uses Pymacs to call an ipython kernel, get results and displays them in the LaTeX buffer. Automatic rendering of images from plot commands, even code completion are supported.

  • As of revision 53 (Oct 11/05), the new Turbo Gears framework can optionally use IPython as its shell. This post has some details on how it works.

  • Movable Python, by Michael Foord and Bruno Thoorens, is a way of building portable Python environments which uses IPython for its interactive features.

  • The Logix programming system integrates with IPython for interactive work.

  • The iVR toolkit provides IPython as its shell in interactive Virtual Reality applications.

  • The PuDB debugger allows the use of IPython for its interactive shell.

  • The StarCluster EC2 cluster computing tool has a plugin for configuring a parallel IPython cluster and notebook server. StarCluster also uses IPython for its interactive shell ($starcluster shell).

  • DrQueueIPython, a Python port of DrQueue, the open source distributed render queue, which uses IPython for task management and network communication.

  • The JetBrains PyCharm IDE added IPython support in version 2.0.

  • The IdleX extensions to Python's basic IDE support an IPython backend from version 0.8.

  • The Windmill testing framework uses IPython for its shell control.

  • WSPPDE provides a portable Python 2.7.9 development environment for MS Windows™ including IPython 3.0.0, Numpy, Scipy, Matplotlib and Pandas in a one click package.

  • NotebookCloud is a free and open source web service for creating and managing IPython Notebook servers on Amazon's EC2.

  • INotebook is a desktop app for directly opening .ipynb files

  • Quantopian is an online algorithm trading platform, using many things inherited from Ipython Notebook.

Clone this wiki locally