{ "info": { "author": "Roberto Haddock Lobo", "author_email": "rhlobo+bigtempo@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Intended Audience :: Financial and Insurance Industry", "Intended Audience :: Information Technology", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python :: 2.7", "Topic :: Scientific/Engineering", "Topic :: Scientific/Engineering :: Information Analysis", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "Flask-BigTempo\n--------------\n\nFlask extension offering several utilities for creating bigtempo servers.\n\n## Installing\n\n`pip` should do the job:\n```bash\n$ pip install flask-bigtempo\n```\n\nThere is a `requirements.txt` file is you want to checkout the source code directly.\n\n-------------------------------------------------------------------------------\n\n## Datastore API\nIt is meant to store timeseries data.\n\nEach timeseries is identified by the conjunction of an `reference` and a `symbol`.\nIt is structured this way so that the source (or type) of the data can be declared as the `reference`.\nExample:\n- While in the stockmarket context, the `reference` can be NASDAQ while `symbol` is left for the company stock.\n- Storing country 'UN Human Development Index' the `reference` can be `HDI` while the `symbol` would take a country's name or code.\n\nHere you can find:\n\n- A __Storage__ implementation that offers methods to save / update, retrieve and delete `pandas dataframes`\n- A __flask extension__ that exposes an REST API that handles data as json\n- A __REST client__ that can communicate with the REST API\n- A __command line script__ that enables shell usage of the REST API\n- Some __bigtempo datasources__ that allows easy integration, after all, `store api` was conceived exactly to serve data to `bigtempo`.\n\n\n### Storage implementation\nFor the moment the is only one implementation based on SQLAlchemy.\nYou can find it at `flask_bigtempo/store/storages.py`.\nExample usage can be found `flask_bigtempo/store/clients.py`\n\n\n### The flask extension:\nYou can easily have your flask server expose `bigtempo store api`:\n```python\n#!/usr/bin/env python\n\n\nfrom flask import Flask\nfrom flask.ext.sqlalchemy import SQLAlchemy\nfrom flask.ext.bigtempo import DatastoreAPI\n\n\napp = Flask(__name__)\napp.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite://'\n\ndb = SQLAlchemy(app)\n\n# The datastore api needs flask's app instance and a sqlalchemy engine\ndatastore = DatastoreAPI(app, db.engine)\n\n\n@app.route('/')\ndef hello_world():\n return '''\n

Welcome!

\n The routes for datastore can be found at \"/api/store/\"
\n '''\n\n\nif __name__ == '__main__':\n app.run(debug=True)\n```\n\nThe following methods are made available:\n\n- Data retrieval: __GET__ /api/store/{reference}/{symbol}\n- Data insertion: __PUT__ /api/store/{reference}/{symbol}\n- Data deletion: __DELETE__ /api/store/{reference}/{symbol}\n\nOptionally, you can use aditional url parameters:\n\n- `json_format` (eg.: `?json_format=index`).\n- `date_format` (eg.: `?date_format=iso`).\nThe formats available are the same provided by the pandas `to_json` and `read_json` methods.\n\n\n### REST Clients\nYou can find them at `flask_bigtempo/store/clients.py`:\n\n- `DFStoreRestClient` works with Dataframes as input and output;\n- `JSONStoreRestClient` works with JSON as input and output;\n\nUsing it should be as simple as:\n```python\nimport flask_bigtempo.store.clients as store_client\n\napi = store_client.DFStoreRestClient()\ndataframe = api.retrieve('HDI', 'Brazil')\n```\n\n\n### CL Script\nIts code is available at the `scripts` directory.\nAs soon as you install this lib at your computer, `store_api` should be available on the PATH.\n\nYou can learn more about its usage by executing `store_api -h`\n\n\n### Bigtempo DataSources\nAvailable at `flask_bigtempo/store/datasources.py`.\n\nYou can import it by:\n```python\nimport flask_bigtempo.store.datasources as datasources\n\nds = datasources.RESTStoreDatasource('example')\n```\n\nAnd all that is left is to register it to your bigtempo engine.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/rhlobo/flask-bigtempo", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "flask-bigtempo", "package_url": "https://pypi.org/project/flask-bigtempo/", "platform": "any", "project_url": "https://pypi.org/project/flask-bigtempo/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/rhlobo/flask-bigtempo" }, "release_url": "https://pypi.org/project/flask-bigtempo/0.8/", "requires_dist": null, "requires_python": null, "summary": "Flask extension for bigtempo features", "version": "0.8" }, "last_serial": 1404647, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "cbf724bbe029d9e2e20a13b8bb5827c3", "sha256": "c88b44e7da8dc77d0de274b487c2a42de561aab3aedcec25555b1ae8856b2fc3" }, "downloads": -1, "filename": "flask-bigtempo-0.1.tar.gz", "has_sig": false, "md5_digest": "cbf724bbe029d9e2e20a13b8bb5827c3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4656, "upload_time": "2015-01-22T17:30:11", "url": "https://files.pythonhosted.org/packages/0a/9b/2f75c7e2236151c3d3b93fece414525283c6f7d9a44e7bb11aa03f62a2a7/flask-bigtempo-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "255bba0990f192a83aa1019a46bc3a8f", "sha256": "bf705a10f61b1e4901dcf53523065f05aa880ef56ca2809bfbf8676834af774a" }, "downloads": -1, "filename": "flask-bigtempo-0.2.tar.gz", "has_sig": false, "md5_digest": "255bba0990f192a83aa1019a46bc3a8f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7409, "upload_time": "2015-01-27T14:56:19", "url": "https://files.pythonhosted.org/packages/a4/fb/6c03ae378df75c3bd9abd1187f800007c0a731f2735809f45abdd3166e7a/flask-bigtempo-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "c479eedbca5d59e4c20f5d558c9e3499", "sha256": "dc87be525b4a6b22005368e383320436dfe48d8841181a82e5f19387c9114a2e" }, "downloads": -1, "filename": "flask-bigtempo-0.3.tar.gz", "has_sig": false, "md5_digest": "c479eedbca5d59e4c20f5d558c9e3499", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7396, "upload_time": "2015-01-27T14:59:44", "url": "https://files.pythonhosted.org/packages/ba/76/44f5ef285aca353eab5998d6420b5971bd27ec0cbae2c8ec003337cde7f8/flask-bigtempo-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "8e13c26051e3a1997d8013bc80420907", "sha256": "ff073701bb3aafdb13867e7b3baf2e8ad5db1801af76f8d0474a354c9dee570e" }, "downloads": -1, "filename": "flask-bigtempo-0.4.tar.gz", "has_sig": false, "md5_digest": "8e13c26051e3a1997d8013bc80420907", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7449, "upload_time": "2015-01-27T20:54:35", "url": "https://files.pythonhosted.org/packages/92/01/c5188612762d06d5f1ef108701228db466552b97df077246ef064642e5a2/flask-bigtempo-0.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "59f94bbd7206ab5b03a79633ca23f387", "sha256": "b0985906ba63a8e2563ef4a944bf88f54a0413361429c0e998d5bfeb933465ce" }, "downloads": -1, "filename": "flask-bigtempo-0.5.tar.gz", "has_sig": false, "md5_digest": "59f94bbd7206ab5b03a79633ca23f387", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7453, "upload_time": "2015-01-27T21:13:14", "url": "https://files.pythonhosted.org/packages/c5/2b/82a32e7c360c8033a755779a30d821fde819e8f41cdf17c9b9ec54743677/flask-bigtempo-0.5.tar.gz" } ], "0.7": [ { "comment_text": "", "digests": { "md5": "252606890442411ab5ed21b1ff044c85", "sha256": "a213ad22555e752de0eb10edefd1eb5da8d87f100ec2a82af3c468f5ee844211" }, "downloads": -1, "filename": "flask-bigtempo-0.7.tar.gz", "has_sig": false, "md5_digest": "252606890442411ab5ed21b1ff044c85", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7676, "upload_time": "2015-01-31T18:03:43", "url": "https://files.pythonhosted.org/packages/78/d7/1dc8912cb17ca47ed775cfd6789fc1e65da8cac72d2a4189da2ef54db9e1/flask-bigtempo-0.7.tar.gz" } ], "0.8": [ { "comment_text": "", "digests": { "md5": "163cb14ef9a55b7d9352226774de892b", "sha256": "0bb4b0e570a2293cba4f4b69b11632c95d659f4813c6bfba49b2147511cef28b" }, "downloads": -1, "filename": "flask-bigtempo-0.8.tar.gz", "has_sig": false, "md5_digest": "163cb14ef9a55b7d9352226774de892b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7679, "upload_time": "2015-01-31T23:41:45", "url": "https://files.pythonhosted.org/packages/2a/34/8aed78764c2102a3cf0ce08ee209c2b046953699b24a3eb6e1de4a03235c/flask-bigtempo-0.8.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "163cb14ef9a55b7d9352226774de892b", "sha256": "0bb4b0e570a2293cba4f4b69b11632c95d659f4813c6bfba49b2147511cef28b" }, "downloads": -1, "filename": "flask-bigtempo-0.8.tar.gz", "has_sig": false, "md5_digest": "163cb14ef9a55b7d9352226774de892b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7679, "upload_time": "2015-01-31T23:41:45", "url": "https://files.pythonhosted.org/packages/2a/34/8aed78764c2102a3cf0ce08ee209c2b046953699b24a3eb6e1de4a03235c/flask-bigtempo-0.8.tar.gz" } ] }