Screenshot of Spyder on Windows | |
Original author(s) | Pierre Raybaut |
---|---|
Developer(s) | Spyder project contributors |
Initial release | 18 October 2009; 15 years ago (2009-10-18) |
Stable release | 6.0.3 / 11 December 2024; 21 days ago (11 December 2024) |
Repository | |
Written in | Python |
Operating system | Cross-platform |
Platform | Qt, Windows, macOS, Linux |
Type | Integrated development environment |
License | MIT |
Website | www |
Spyder is an open-source cross-platform integrated development environment (IDE) for scientific programming in the Python language. Spyder integrates with a number of prominent packages in the scientific Python stack, as well as other open-source software. Created by Pierre Raybaut and released in 2009 under the MIT license, since 2012 Spyder has been maintained and continuously improved by Python developers and the community.
Spyder is extensible with first-party and third-party plugins, and includes support for interactive tools for data inspection and embeds Python-specific code quality assurance and introspection instruments, such as Pyflakes, Pylint and Rope. Spyder uses Qt for its GUI and is designed to use either of the PyQt or PySide Python bindings. QtPy, a thin abstraction layer developed by the Spyder project and later adopted by multiple other packages, provides the flexibility to use either backend.
History
Initially created and developed by Pierre Raybaut, it was published on October 18, 2009 under the MIT license.
Since 2012 Spyder has been maintained and continuously improved by a team of scientific Python developers and the community. As of 2024, the Spyder website lists the Chan Zuckerberg Initiative and NumFOCUS as their two major sponsors, also noting donations received from users through Open Collective. Carlos Cordoba was listed as the lead maintainer of the software, with Daniel Althiz as co-maintainer.
Software
It is an open-source cross-platform integrated development environment (IDE) for scientific programming in the Python language. Spyder integrates with a number of prominent packages in the scientific Python stack, including NumPy, SciPy, Matplotlib, pandas, IPython, SymPy and Cython, as well as other open-source software.
Spyder is extensible with first-party and third-party plugins, includes support for interactive tools for data inspection and embeds Python-specific code quality assurance and introspection instruments, such as Pyflakes, Pylint and Rope. It is available cross-platform through Anaconda, on Windows, on macOS through MacPorts, and on major Linux distributions such as Arch Linux, Debian, Fedora, Gentoo Linux, openSUSE and Ubuntu.
Spyder uses Qt for its GUI and is designed to use either of the PyQt or PySide Python bindings. QtPy, a thin abstraction layer developed by the Spyder project and later adopted by multiple other packages, provides the flexibility to use either backend.
Features
Features include:
- An editor with syntax highlighting, introspection, code completion
- Support for multiple IPython consoles
- The ability to explore and edit variables from a GUI
- A Help pane able to retrieve and render rich text documentation on functions, classes and methods automatically or on-demand
- A debugger linked to IPdb, for step-by-step execution
- Static code analysis, powered by Pylint
- A run-time Profiler, to benchmark code
- Project support, allowing work on multiple development efforts simultaneously
- A built-in file explorer, for interacting with the filesystem and managing projects
- A "Find in Files" feature, allowing full regular expression search over a specified scope
- An online help browser, allowing users to search and view Python and package documentation inside the IDE
- A history log, recording every user command entered in each console
- An internal console, allowing for introspection and control over Spyder's own operation
Plugins
Available plugins include:
- Spyder-Unittest, which integrates the popular unit testing frameworks Pytest, Unittest and Nose with Spyder
- Spyder-Notebook, allowing the viewing and editing of Jupyter Notebooks within the IDE
- Download Spyder Notebook
- Using conda: conda install spyder-notebook -c spyder-ide
- Using pip: pip install spyder-notebook
- Spyder-Reports, enabling use of literate programming techniques in Python
- Spyder-Terminal, adding the ability to open, control and manage cross-platform system shells within Spyder
- Download Spyder Terminal
- Using conda: conda install spyder-terminal -c spyder-ide
- Using pip: pip install spyder-terminal
- Spyder-Vim, containing commands and shortcuts emulating the Vim text editor
- Spyder-AutoPEP8, which can automatically conform code to the standard PEP 8 code style
- Spyder-Line-Profiler and Spyder-Memory-Profiler, extending the built-in profiling functionality to include testing an individual line, and measuring memory usage
See also
References
- ^ "spyder-ide/spyder at v1.0.0". GitHub. Retrieved 3 April 2017.
- ^ "(Python)(ANN) Spyder v1.0.0 released". 18 October 2009.
- "Release 6.0.3". 11 December 2024. Retrieved 30 December 2024.
- ^ "Migrating from MATLAB to Python". Greener Engineering. et.byu.edu. Archived from the original on 2014-10-10. Retrieved 9 February 2014.
- ^ "Spyder review". review.techworld.com. Archived from the original on 3 December 2013. Retrieved 9 February 2014.
- ^ "About". spyder-ide.org. 2024. Retrieved December 2, 2024.
- ^ "Spyder license". GitHub.
- ^ "SpyderPlugins – spyderlib – Plugin development – Spyder is the Scientific PYthon Development EnviRonment". Archived from the original on 24 October 2013. Retrieved 9 February 2014.
- ^ "Pylint extension – Spyder 2.2 documentation". packages.python.org. Archived from the original on 1 February 2014. Retrieved 9 February 2014.
- ^ "Reviews for spyder". apps.ubuntu.com. Retrieved 9 February 2014.
- ^ "Seznámení s Python IDE Spyder". fedora.cz. Archived from the original on 20 August 2013. Retrieved 9 February 2014.
- ^ "Spyder runtime dependencies". github.com. 21 February 2015.
- ^ "QtPy: Abstraction layer for PySide/PyQt4/PyQt5". github.com. 23 October 2015. Retrieved 28 December 2015.
- "Spyder website main page". spyder-ide.org. 2024. Retrieved December 2, 2024.
- "Spyder Documention – Features Overview". Spyder Project. Archived from the original on 2019-01-23. Retrieved 2018-07-30.
- "Spyder Plugins List". Spyder Project. Retrieved 2018-07-30.