Skip to content

0xBADCA7/spyder

 
 

Repository files navigation

Spyder - The Scientific PYthon Development EnviRonment

Copyright © Spyder Project Contributors.

Project details

license pypi version Join the chat at https://gitter.im/spyder-ide/public OpenCollective Backers OpenCollective Sponsors

Build status

Travis status AppVeyor status CircleCI Coverage Status codecov


Important Announcement: Spyder is unfunded!

Since mid November/2017, Anaconda, Inc has stopped funding Spyder development, after doing it for the past 18 months. Because of that, development will focus from now on maintaining Spyder 3 at a much slower pace than before.

If you want to contribute to maintain Spyder, please consider donating at

https://opencollective.com/spyder

We appreciate all the help you can provide us and can't thank you enough for supporting the work of Spyder devs and Spyder development.

If you want to know more about this, please read this page.


Overview

screenshot

Spyder is a Python development environment with many features for research, data analysis, and scientific package creation:

  • Editor

    Multi-language editor with function/class browser, code analysis features (pyflakes and pylint are currently supported), code completion, horizontal and vertical splitting, and goto definition.

  • Interactive console

    IPython consoles with workspace and debugging support to instantly evaluate the code written in the Editor. Spyder consoles also come with Matplotlib figures integration.

  • Documentation viewer

    Show documentation for any class or function call made either in the Editor or a Console.

  • Variable explorer

    Explore variables created during the execution of a file. Editing them is also possible with several GUI based editors, like a dictionary and Numpy array ones.

  • Find in files

    Search for queries across multiple files in your project, with full support for regular expressions.

  • File explorer

    Interact with your filesystem from within the IDE.

  • History log

    Browse an automatically de-duplicated listing of every command you run on any Spyder console.

Spyder may also be used as a PyQt5/PyQt4 extension library (module spyder). For example, the Python interactive shell widget used in Spyder may be embedded in your own PyQt5/PyQt4 application.

Documentation

You can read the Spyder documentation online on PythonHosted.

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

  • The WinPython distribution for Windows
  • The MacPorts, project for macOS, and
  • Your distribution's package manager (i.e. apt-get, yum, etc) on Linux, and
  • 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.

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

Alternatively, you can use pip to install PyQt5 (or PyQt4) separately 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.

Dependencies

Important note: Most if not all the dependencies listed below come with Anaconda or other scientific Python distributions, so you don't need to install them seperatly 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.3 (Python <=3.2 is not supported anymore).

Runtime dependencies

  • Python 2.7 or 3.3+
  • PyQt5 5.2+ or PyQt4 4.6+: PyQt5 is recommended.
  • qtconsole 4.2.0+: Enhanced Python interpreter.
  • Rope 0.9.4+ and Jedi 0.9.0+: Editor code completion, calltips and go-to-definition.
  • Pyflakes: 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.
  • Pycodestyle: Style analysis.
  • Psutil: CPU and memory usage on the status bar.
  • Nbconvert: Manipulation of notebooks in the Editor.
  • Qtawesome 0.4.1+: To have an icon theme based on FontAwesome.
  • Pickleshare: Show import completions on the Python consoles.
  • PyZMQ: Run introspection services asynchronously.
  • QtPy 1.2.0+: Abstracion layer for Python Qt bindings so that Spyder can run on PyQt4 and PyQt5.
  • Chardet: Character encoding auto-detection in Python.
  • Numpydoc: Used by Jedi to get return types for functions with Numpydoc docstrings.
  • Cloudpickle: Serialize variables in the IPython kernel to send them to Spyder.

Optional dependencies

  • Matplotlib: 2D/3D plotting in the Python and IPython consoles.
  • Pandas: View and edit DataFrames and Series in the Variable Explorer.
  • Numpy: View and edit two or three 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.

Contributing

Everyone is welcome to help with Spyder. Please read our contributing instructions to get started!

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!

Backers

Support us with a monthly donation and help us continue our activities.

Backers

Sponsors

Become a sponsor to get your logo on our README on Github.

Sponsors

More information

About

Official repository for Spyder - The Scientific PYthon Development EnviRonment

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 94.5%
  • JavaScript 4.6%
  • CSS 0.3%
  • HTML 0.3%
  • Shell 0.2%
  • Batchfile 0.1%