Asynchronous Component based Event Application Framework
circuits is a Lightweight Event driven and Asynchronous Application Framework for the Python Programming Language 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.
To take full advantage of circuits and its architecture, circuits requires that your application be designed in terms of components and their interactions (events) with each other. An application written using the circuits application framework is maintainable, scalable and easy to develop.
circuits’ Loosely Coupled Component Architecture allows for a high level of Reuse and Scalability. Components are Componsable and much of the component library that circuits ships with are implemented as composed components.
- event driven
- concurrency support
- component archiecture
- asynchronous I/O components
- no required external dependencies
- full featured web framework (circuits.web)
- coroutine based synchronization primitives
- circuits has no dependencies beyond the Python Standard Library.
- Python: >= 2.6
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
> python setup.py install
circuits is licensed under the MIT License.
We welcome any questions or feedback about bugs and suggestions on how to improve circuits. Let us know what you think about circuits. @pythoncircuits.
Do you have suggestions for improvement? Then please Create an Issue 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.
Release Notes - circuits-2.0.1
Minor release fixing a few bugs found whilst testing on FreeBSD.
For a full list of changes for this release see the Change Log.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.