1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91
|
[](https://github.com/circuits/circuits/actions/workflows/python-app.yml)
[](https://codecov.io/gh/circuits/circuits)
circuits is a **Lightweight** **Event** driven and **Asynchronous** **Application Framework** for the [Python Programming Language](http://www.python.org/) with a strong **Component** Architecture.
circuits also includes a lightweight, high performance and scalable HTTP/WSGI compliant web server as well as various I/O and Networking components.
- [Website](http://circuitsframework.com/)
- [Downloads](https://github.com/circuits/circuits/releases)
- [Documentation](http://circuits.readthedocs.org/en/latest/)
Got questions?
- [Ask a Question](http://stackoverflow.com/questions/ask) (Tag it: `circuits-framework`)
Examples
========
Features
========
- event driven
- concurrency support
- component architecture
- asynchronous I/O components
- no required external dependencies
- full featured web framework (circuits.web)
- coroutine based synchronization primitives
Requirements
============
- circuits has no dependencies beyond the [Python Standard Library](http://docs.python.org/library/).
Supported Platforms
===================
- Linux, FreeBSD, Mac OS X, Windows
- Python 3.7, 3.8, 3.9, 3.10, 3.11, 3.12
- pypy (the newer the better)
Installation
============
The simplest and recommended way to install circuits is with pip. You may install the latest stable release from PyPI with pip:
$ pip install circuits
If you do not have pip, you may use easy\_install:
$ easy_install circuits
Alternatively, you may download the source package from the [PyPi](http://pypi.python.org/pypi/circuits) or the [Downloads](https://github.com/circuits/circuits/releases) extract it and install using:
$ python setup.py install
> **note**
>
> You can install the [development version](https://github.com/circuits/circuits/archive/master.zip#egg=circuits-dev)
> via `pip install circuits==dev`.
>
License
=======
circuits is licensed under the [MIT License](http://www.opensource.org/licenses/mit-license.php).
Feedback
========
We welcome any questions or feedback about bugs and suggestions on how to improve circuits.
Let us know what you think about circuits. [@pythoncircuits](http://twitter.com/pythoncircuits).
Do you have suggestions for improvement? Then please [Create an Issue](https://github.com/circuits/circuits/issues/new) with details of what you would like to see. I'll take a look at it and work with you to either incorporate the idea or find a better solution.
Community
=========
There are also several places you can reach out to the circuits community:
- [Mailing List](http://groups.google.com/group/circuits-users)
- [\#circuits IRC Channel](https://web.libera.chat/#circuits) on the [Libera.Chat IRC Network](https://libera.chat)
- [Ask a Question](http://stackoverflow.com/questions/ask) on [Stackoverflow](http://stackoverflow.com/) (Tag it: `circuits-framework`)
------------------------------------------------------------------------
Disclaimer
==========
Whilst I (James Mills) continue to contribute and maintain the circuits project I do not represent the interests or business of my employer Facebook Inc. The contributions I make are of my own free time and have no bearing or relevance to Facebook Inc.
|