Skip to main content

A Twisted Web REST micro-framework

Project description

Twisted REST micro-framework
================================

Based on *Flask* API, with integrated multiprocessing support for full usage of all CPUs.
Provides a more Flask/Sinatra-style API on top of the core *twisted.web* APIs.

Geared towards creating REST-oriented server platforms (e.g. as a source of data for a Javascript MVC app).
Tested exclusively on PyPy for maximum performance.

Example
-------

from corepost.web import CorePost
from corepost.enums import Http

app = CorePost()

@app.route("/",Http.GET)
def root(request,**kwargs):
return request.path

@app.route("/test",Http.GET)
def test(request,**kwargs):
return request.path

@app.route("/test/<int:numericid>/test2/<stringid>",Http.GET)
def test_get_resources(request,numericid,stringid,**kwargs):
return "%s - %s" % (numericid,stringid)

if __name__ == '__main__':
app.run()

@defer.inlineCallbacks support
------------------------------

If you want a deferred async method, just complete the request yourself, instead of returning a string response

@app.route("/",Http.GET)
@defer.inlineCallbacks
def root(request,**kwargs):
val = yield db.query("SELECT ....")
request.write(val)
request.finish()

Performance
-----------

On par with raw *twisted.web* performance. Minimal overhead for URL routing and function argument extraction.

Plans
-----

* match all the relevant features of the Flask API
* integrate twisted.internet.processes in order to scale to multiple CPU cores : http://pypi.python.org/pypi/twisted.internet.processes

Project details


Download files

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

Source Distribution

CorePost-0.0.2.tar.gz (4.7 kB view hashes)

Uploaded source

Built Distribution

CorePost-0.0.2-py2.7.egg (9.6 kB view hashes)

Uploaded 2 7

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page