Hi all, I'm pleased to announce the release of circuits-1.0a2
Overview ====== circuits is an event-driven framework with a focus on Component Software Architectures where System Functionality is defined in Components. Components communicate with one another by propagating events throughout the system. Each Component can react to events and expose events to other parts of the system Components are able to manage their own events and can also be linked to other Components. circuits has a clean architecture and has no external dependencies on any other library. It's simplistic design is unmatchable but yet delivers a powerful framework for building large, scalable, maintainable applications and systems. circuits was a core integral part of the pymills library developed in 2006 and was partly inspired by the Trac architecture. Quick Examples -------------------- Hello World! ~~~~~~~~ >>> from circuits.core import listener, Component, Event, Manager >>> >>> class Hello(Component): ... @listener("hello") ... def onHELLO(self): ... print "Hello World!" >>> manager = Manager() >>> manager += Hello() >>> manager.push(Event(), "hello") >>> manager.flush() Hello World! Hello Web! ~~~~~~~ from circuits.lib.web import Server, Controller class HelloWorld(Controller): def index(self): return "Hello World!" server = Server(8000) server += HelloWorld() server.run() Hello Web! (WSGI) ~~~~~~~~~~~~ from circuits.lib.web import Application, Controller class HelloWorld(Controller): def index(self): return "Hello World!" application = Application() application += HelloWorld() Download circuits using easy_install or from here: http://trac.softcircuit.com.au/circuits/downloads or from the Python Package Index. Please visit the circuits website for more information about circuits, or to file bug reports or enhancements. http://trac.softcircuit.com.au/circuits/ --JamesMills -- -- -- "Problems are solved by method" -- http://mail.python.org/mailman/listinfo/python-list