Skip to main content

Asynchronous Component based Event Application Framework

Project description

Overview

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 encourages you to design your application in terms of loosely coupled components. Circuits has a very powerful message passing system that enables components to interact with each other via events. Applications written this way tend to be more maintainable, easier to develop and scale to complex systems.

circuits’ Loosely Coupled Component Architecture allows for a high level of Reuse and Scalability. Simpler components can be combined together to form Complex Components and provide higher level functionality and abstraction. Much of the circuits component library is designed and built this way.

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

Supported Platforms

  • Linux, FreeBSD, Mac OS X, Windows

  • Python 2.6, 2.7, 3.2, 3.3

  • pypy 2.0

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 Page or the Downloads page on the Website; extract it and install using:

> python setup.py install

License

circuits is licensed under the MIT License.

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.

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.

Community

There is also a small community of circuits enthusiasts that you may find on the #circuits IRC Channel on the FreeNode IRC Network and the Mailing List.

Release Notes - circuits-2.1.0 (<release>)

This release adds the following new features to circuits:

  • Python 3 support.

  • Windows support.

  • PyPy support.

  • IPv6 support.

  • Better WSGI support.

  • Fully documented examples.

  • Component Interface querying.

And many bug fixes!

Download files

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

Source Distributions

circuits-2.1.0.zip (1.8 MB view details)

Uploaded Source

circuits-2.1.0.tar.gz (1.3 MB view details)

Uploaded Source

circuits-2.1.0.tar.bz2 (1.1 MB view details)

Uploaded Source

Built Distributions

circuits-2.1.0-py3.3.egg (526.7 kB view details)

Uploaded Source

circuits-2.1.0-py3.2.egg (513.3 kB view details)

Uploaded Source

circuits-2.1.0-py2.7.egg (506.9 kB view details)

Uploaded Source

circuits-2.1.0-py2.6.egg (507.3 kB view details)

Uploaded Source

File details

Details for the file circuits-2.1.0.zip.

File metadata

  • Download URL: circuits-2.1.0.zip
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for circuits-2.1.0.zip
Algorithm Hash digest
SHA256 1cccca389a0c55bd3d17e418b609765d50c08737a4c93593f4460b37398ed8ed
MD5 0da67cbdb111115674428e694e1a2bbb
BLAKE2b-256 37c8866f8d3360fe654b30385ec7d1cf2facfb824d8661bb104e789bbe61a158

See more details on using hashes here.

File details

Details for the file circuits-2.1.0.tar.gz.

File metadata

  • Download URL: circuits-2.1.0.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for circuits-2.1.0.tar.gz
Algorithm Hash digest
SHA256 9da4b1a92bc12d5a56b72f2c345847e8991595003a3a0076e55ac9f1b52404e6
MD5 267f920f6cdfe88c169a9b0871084c99
BLAKE2b-256 203e6c4c6bbc31d3ac21dfee9bae0c393e326acaac3a3dd32f96cf30ab005807

See more details on using hashes here.

File details

Details for the file circuits-2.1.0.tar.bz2.

File metadata

  • Download URL: circuits-2.1.0.tar.bz2
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for circuits-2.1.0.tar.bz2
Algorithm Hash digest
SHA256 273e426e5d7be69172913013df5a762842ee52d62186390a76dcaa90610b9e48
MD5 db0fad3a2f72e4cbc1012b5cd98c5bfa
BLAKE2b-256 cd6b7d27629ce774785232a17edf4d5734b7552ac6782ed6e46cf35f6d9d0162

See more details on using hashes here.

File details

Details for the file circuits-2.1.0-py3.3.egg.

File metadata

  • Download URL: circuits-2.1.0-py3.3.egg
  • Upload date:
  • Size: 526.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for circuits-2.1.0-py3.3.egg
Algorithm Hash digest
SHA256 6d2c598729b91386ee2ca034d8f5d83f2b0bfa96d17e60004a254f480eb2406d
MD5 081f14c6928630b32e9ceac45a6bbe83
BLAKE2b-256 a5665854fd9d3b62dc18f21b55f5bf52d5dccd2dca486b597517260cfc06c29e

See more details on using hashes here.

File details

Details for the file circuits-2.1.0-py3.2.egg.

File metadata

  • Download URL: circuits-2.1.0-py3.2.egg
  • Upload date:
  • Size: 513.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for circuits-2.1.0-py3.2.egg
Algorithm Hash digest
SHA256 341bcae95673b200b0e80e0c95a0f8297f2c754bc54f644d19e537009acd6f8d
MD5 71e82275ad9b74976a8bcb715ca1aab5
BLAKE2b-256 d8d2b13c68104d6edeb9b9862759acf880f5902dc117d77d0d3a474c5e4182a8

See more details on using hashes here.

File details

Details for the file circuits-2.1.0-py2.7.egg.

File metadata

  • Download URL: circuits-2.1.0-py2.7.egg
  • Upload date:
  • Size: 506.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for circuits-2.1.0-py2.7.egg
Algorithm Hash digest
SHA256 01e4e015643fc45f09a34a7349470a33b01d7e01717d34a6bd897837e7aa39b9
MD5 635d214569e8d93222a4dc91b4a124c7
BLAKE2b-256 6f3de7b9ff6e86498c46b9165cc2e5d0d6fdb705aeba1cf56325b745616c6755

See more details on using hashes here.

File details

Details for the file circuits-2.1.0-py2.6.egg.

File metadata

  • Download URL: circuits-2.1.0-py2.6.egg
  • Upload date:
  • Size: 507.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for circuits-2.1.0-py2.6.egg
Algorithm Hash digest
SHA256 52ff33d8f617ea25db399ec38042f6de312514a8a03ff2a66a82a0fca36468af
MD5 9a32f438e00279e52b82ab54496018b2
BLAKE2b-256 eff1c67372050be2b39b08b221d53250c60e582df4cf6a879ef8b0413146e9b2

See more details on using hashes here.

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