Downloads
Source
Windows (32-bit)
Other
Dependencies
Donate to Twisted
Donations are tax-deductible.
Twisted Sponsors
Become a 2012 sponsor today! For any donation above the bronze level, we will display your logo here on the front page.
What is Twisted?
Twisted is an event-driven networking engine written in Python and licensed under the open source  MIT license.
Easy Custom Servers and Clients
Twisted makes it easy to implement custom network applications, both servers and clients. Here's a TCP server that echoes back everything that's written to it:
from twisted.internet import protocol, reactor class Echo(protocol.Protocol): def dataReceived(self, data): self.transport.write(data) class EchoFactory(protocol.Factory): def buildProtocol(self, addr): return Echo() reactor.listenTCP(1234, EchoFactory()) reactor.run()
Learn more about  writing servers,  writing clients and the  core networking libraries , including support for SSL, UDP, scheduled events, unit testing infrastructure, and much more.
Event-Driven Web Applications
Twisted includes an event-driven web server. Here's a sample web application:
from twisted.web import server, resource from twisted.internet import reactor class HelloResource(resource.Resource): isLeaf = True numberRequests = 0 def render_GET(self, request): self.numberRequests += 1 request.setHeader("content-type", "text/plain") return "I am request #" + str(self.numberRequests) + "\n" reactor.listenTCP(8080, server.Site(HelloResource())) reactor.run()
Learn more about  web application development,  templates and Twisted's  HTTP client.
More Protocols
Twisted also supports many common network protocols, including SMTP, POP3, IMAP, SSHv2, and DNS. For more information see our documentation and  API reference.




![SIMB [image]](http://mowser.com/img?url=http%3A%2F%2Ftwistedmatrix.com%2Ftrac%2Fraw-attachment%2Fwiki%2FTSF%2FSponsorLogos%2Fsimb.png)
