Skip to main content

The Scientific Python Development Environment

Project description

Spyder — The Scientific Python Development Environment

Copyright © 2009–2019 Spyder Project Contributors

Some source files and icons may be under other authorship/licenses; see NOTICE.txt.

license pypi version conda version download count OpenCollective Backers OpenCollective Sponsors Join the chat at https://gitter.im/spyder-ide/public
PyPI status Travis status CircleCI Azure Coverage Status codecov

Screenshot of Spyder's main window


Help support Spyder, the community-developed scientific IDE!

Thanks to your continuing support, we are on track for a Spyder 4 release in early 2019 with all of your most-requested features (a new debugger and completion architecture, better Projects, new Editor functionality, full Variable Explorer object support, a built-in dark theme and much more)!

Spyder development is made possible by contributions from our global user community, along with organizations like NumFOCUS and Quansight. There are numerous ways you can help, many of which don't require any programming. If you'd like to make a donation to help fund further improvements, we're on OpenCollective.

Thanks for all you do to make the Spyder project thrive! More details


Overview

Spyder is a powerful scientific environment written in Python, for Python, and designed by and for scientists, engineers and data analysts. It offers a unique combination of the advanced editing, analysis, debugging, and profiling functionality of a comprehensive development tool with the data exploration, interactive execution, deep inspection, and beautiful visualization capabilities of a scientific package.

Beyond its many built-in features, its abilities can be extended even further via its plugin system and API. Furthermore, Spyder can also be used as a PyQt5 extension library, allowing you to build upon its functionality and embed its components, such as the interactive console, in your own software.

For more general information about Spyder and to stay up to date on the latest Spyder news and information, please check out our new website.

Core components

  • Editor

    Work efficiently in a multi-language editor with a function/class browser, real-time code analysis tools (pyflakes, pylint, and pycodestyle), automatic code completion (jedi and rope), horizontal/vertical splitting, and go-to-definition.

  • Interactive console

    Harness the power of as many IPython consoles as you like with full workspace and debugging support, all within the flexibility of a full GUI interface. Instantly run your code by line, cell, or file, and render plots right inline with the output or in interactive windows.

  • Documentation viewer

    Render documentation in real-time with Sphinx for any class or function, whether external or user-created, from either the Editor or a Console.

  • Variable explorer

    Inspect any variables, functions or objects created during your session. Editing and interaction is supported with many common types, including numeric/strings/bools, Python lists/tuples/dictionaries, dates/timedeltas, Numpy arrays, Pandas index/series/dataframes, PIL/Pillow images, and more.

  • Development tools

    Examine your code with the static analyzer, trace its execution with the interactive debugger, and unleash its performance with the profiler. Keep things organized with project support and a builtin file explorer, and use find in files to search across entire projects with full regex support.

Documentation

You can read the Spyder documentation online on the Spyder Docs website.

Installation

For a detailed guide to installing Spyder, please refer to our installation instructions.

The easiest way to install Spyder on any of our supported platforms is to download it as part of the Anaconda distribution, and use the conda package and environment manager to keep it and your other packages installed and up to date.

If in doubt, you should always install Spyder via this method to avoid unexpected issues we are unable to help you with; it generally has the least likelihood of potential pitfalls for non-experts, and we may be able to provide limited assistance if you do run into trouble.

Other install options exist, including:

  • The WinPython distribution for Windows
  • The MacPorts project for macOS
  • Your distribution's package manager (i.e. apt-get, yum, etc) on Linux
  • The pip package manager, included with most Python installations

However, we lack the resources to provide individual support for users who install via these methods, and they may be out of date or contain bugs outside our control, so we recommend the Anaconda version instead if you run into issues.

Troubleshooting

Before posting a report, please carefully read our Troubleshooting Guide and search the issue tracker for your error message and problem description, as the great majority of bugs are either duplicates, or can be fixed on the user side with a few easy steps. Thanks!

Contributing and Credits

Spyder was originally created by Pierre Raybaut, and is currently maintained by Carlos Córdoba and an international community of volunteers.

You can join us—everyone is welcome to help with Spyder! Please read our contributing instructions to get started!

Certain source files are distributed under other compatible permissive licenses and/or originally by other authors. The icons for the Spyder 3 theme are derived from Font Awesome 4.7 (© 2016 David Gandy; SIL OFL 1.1). Most Spyder 2 theme icons are sourced from the Crystal Project icon set (© 2006-2007 Everaldo Coelho; LGPL 2.1+). Other Spyder 2 icons are from Yusuke Kamiyamane (© 2013 Yusuke Kamiyamane; CC-BY 3.0), the FamFamFam Silk icon set (© 2006 Mark James; CC-BY 2.5), and the KDE Oxygen icons (© 2007 KDE Artists; LGPL 3.0+).

See NOTICE.txt for full legal information.

Running from a Github clone

Spyder can be run directly from the source code, hosted on the Spyder github repo. You may want to do this for fixing bugs in Spyder, adding new features, learning how Spyder works or to try out development versions before they are officially released.

If using conda (strongly recommended), this can be done by running the following from the command line (the Anaconda Prompt, if on Windows):

conda install spyder
conda remove spyder
git clone https://github.com/spyder-ide/spyder.git
cd spyder
python bootstrap.py

You also need to make sure the correct spyder-kernels version is installed for the version of Spyder you are testing. The above procedure will give you spyder-kernels 0.x for the 3.x branch (Spyder 3), so to run the master branch (Spyder 4) you need to additionally execute:

conda install -c spyder-ide spyder-kernels=1.*

Alternatively, you can use pip to install PyQt5 and the other runtime dependencies listed below. However, beware: this method is recommended for experts only, and you'll need to solve any problems on your own.

See the installation instructions for more details on all of this.

Dependencies

Important Note: Most or all of the dependencies listed below come with Anaconda and other scientific Python distributions, so you don't need to install them separately in those cases.

Build dependencies

When installing Spyder from its source package, the only requirement is to have a Python version greater than 2.7 or 3.4 (Python <=3.3 is no longer supported).

Runtime dependencies

  • Python 2.7 or 3.4+: The core language Spyder is written in and for.
  • PyQt5 5.6+: Python bindings for Qt, used for Spyder's GUI.
  • qtconsole 4.5.0+: Enhanced Python interpreter.
  • Python-language-server: Editor code completion, calltips go-to-definition and real-time code analysis
  • Sphinx: Rich text mode for the Help pane.
  • Pygments 2.0+: Syntax highlighting for all file types it supports.
  • Pylint: Static code analysis.
  • Psutil: CPU and memory usage on the status bar.
  • Nbconvert: Manipulation of notebooks in the Editor.
  • Qtawesome 0.5.7+: To have an icon theme based on FontAwesome.
  • Pickleshare: Show import completions on the Python consoles.
  • PyZMQ: Client for the language server protocol (LSP).
  • QtPy 1.5.0+: Abstraction layer for Python Qt bindings so that Spyder can run on multiple Qt bindings and versions.
  • Chardet: Character encoding auto-detection in Python.
  • Numpydoc: Used by Jedi to get function return types from Numpydocstrings.
  • Cloudpickle: Serialize variables in the IPython kernel to send to Spyder.
  • spyder-kernels 1.4.0+: Jupyter kernels for the Spyder console.
  • keyring: Save Github credentials to report errors securely.
  • QDarkStyle 2.6.4+: A dark stylesheet for Qt applications, used for Spyder's dark theme.
  • atomicwrites: Atomic file writes.
  • pexpect/paramiko: Connect to remote kernels through SSH.
  • diff-match-patch: Compute text file diff changes during edition.
  • watchdog: Watch file changes on project directories.
  • pyxdg: Parse .desktop files on Linux

Optional dependencies

  • Matplotlib: 2D/3D plotting in the IPython console.
  • Pandas: View and edit DataFrames and Series in the Variable Explorer.
  • Numpy: View and edit 2- or 3-dimensional arrays in the Variable Explorer.
  • SymPy: Symbolic mathematics in the IPython console.
  • SciPy: Import Matlab workspace files in the Variable Explorer.
  • Cython: Run Cython files in the IPython console.

Sponsors

Spyder is funded thanks to the generous support of

QuansightNumfocus

and the donations we have received from our users around the world through Open Collective:

Sponsors

More information

Main Website

Download Spyder (with Anaconda)

Online Documentation

Spyder Github

Troubleshooting Guide and FAQ

Development Wiki

Gitter Chatroom

Google Group

@Spyder_IDE on Twitter

@SpyderIDE on Facebook

Support Spyder on OpenCollective

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

spyder-4.0.0b4.tar.gz (8.8 MB view details)

Uploaded Source

Built Distributions

spyder-4.0.0b4-py3-none-any.whl (9.6 MB view details)

Uploaded Python 3

spyder-4.0.0b4-py2-none-any.whl (9.6 MB view details)

Uploaded Python 2

File details

Details for the file spyder-4.0.0b4.tar.gz.

File metadata

  • Download URL: spyder-4.0.0b4.tar.gz
  • Upload date:
  • Size: 8.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.18.4 setuptools/41.0.1 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.6.3

File hashes

Hashes for spyder-4.0.0b4.tar.gz
Algorithm Hash digest
SHA256 1d874544ccfbc7b88dcf494a3f9e653a522a3800da8f148ba1f53dac60f58504
MD5 0c50f1b635c8b5e3709431fd999e3ec5
BLAKE2b-256 716e63781c0395806832f355505c809de4edb6cca96d63dd9dad2a977698a5df

See more details on using hashes here.

Provenance

File details

Details for the file spyder-4.0.0b4-py3-none-any.whl.

File metadata

  • Download URL: spyder-4.0.0b4-py3-none-any.whl
  • Upload date:
  • Size: 9.6 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.18.4 setuptools/41.0.1 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.6.3

File hashes

Hashes for spyder-4.0.0b4-py3-none-any.whl
Algorithm Hash digest
SHA256 e5245c5ceb53044985cc87d406abec680758ce8a276be1dd6a1564742f682a0d
MD5 dc46087c461fb7e501757c19dacdd010
BLAKE2b-256 e0f680e2f5e3f1c3fc04430ec3655000a766e9bc5ba658a2b96a7ecbccb6ee63

See more details on using hashes here.

Provenance

File details

Details for the file spyder-4.0.0b4-py2-none-any.whl.

File metadata

  • Download URL: spyder-4.0.0b4-py2-none-any.whl
  • Upload date:
  • Size: 9.6 MB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.18.4 setuptools/41.0.1 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.6.3

File hashes

Hashes for spyder-4.0.0b4-py2-none-any.whl
Algorithm Hash digest
SHA256 3a912c8e6ee88674b68eefa48907b176b65dca4e76047fb05d9719ca9d88e153
MD5 3bccc924e0f73936698fc0e42367f25d
BLAKE2b-256 b73f33bb9d4521b027b6bb4aa14425f6e0e1f2d03a051e283bf888a2aa5e4d85

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page