{ "info": { "author": "Rekcurd team and contributors", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Web Environment", "Intended Audience :: Developers", "Intended Audience :: Information Technology", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Libraries :: Application Frameworks" ], "description": "# Rekcurd-dashboard\n\n[![Build Status](https://travis-ci.com/rekcurd/dashboard.svg?branch=master)](https://travis-ci.com/rekcurd/dashboard)\n[![PyPI version](https://badge.fury.io/py/rekcurd-dashboard.svg)](https://badge.fury.io/py/rekcurd-dashboard)\n[![codecov](https://codecov.io/gh/rekcurd/dashboard/branch/master/graph/badge.svg)](https://codecov.io/gh/rekcurd/dashboard \"Non-generated packages only\")\n[![pypi supported versions](https://img.shields.io/pypi/pyversions/rekcurd-dashboard.svg)](https://pypi.python.org/pypi/rekcurd-dashboard)\n\nRekcurd dashboard is the project for managing ML model and deploying ML module. Any Rekcurd service is manageable. It can deploy the Rekcurd service to Kubernetes cluster and can control traffic weights which Istio manages.\n\n\n## Parent Project\nhttps://github.com/rekcurd/community\n\n\n## Components\n- [Rekcurd](https://github.com/rekcurd/rekcurd-python): Project for serving ML module.\n- [Rekcurd-dashboard](https://github.com/rekcurd/dashboard): Project for managing ML model and deploying ML module.\n- [Rekcurd-client](https://github.com/rekcurd/python-client): Project for integrating ML module.\n\n\n## Screen shot\n\n\n\n## Environment\n- Python 3.6\n- flask 1.0.x\n- [Node.js](https://nodejs.org/) 8.x\n- [yarn](https://yarnpkg.com/)\n\n\n## Installation\nFrom source:\n\n```bash\n$ git clone --recursive https://github.com/rekcurd/dashboard.git\n$ cd dashboard/frontend\n$ yarn install && yarn run build && cd ..\n$ pip install -e .\n```\n\nFrom PyPi directly:\n\n```bash\n$ pip install rekcurd-dashboard\n```\n\n\n## How to use\nCheck the belows in detail.\n- [Backend](./rekcurd_dashboard/README.md)\n- [Frontend](./frontend/README.md)\n\n##### Generate settings\nYou can generate the template of `settings.yml` file.\n```bash\n$ rekcurd_dashboard template\n```\n\n##### Boot command\n```bash\n$ rekcurd_dashboard db --settings settings.yml init\n$ rekcurd_dashboard db --settings settings.yml migrate\n$ rekcurd_dashboard server --settings settings.yml\n```\n\n##### docker-compose (Deprecated)\n```bash\n# For dev\n$ docker-compose -f docker-compose/docker-compose.develop.yaml up\n# For prod\n$ docker-compose -f docker-compose/docker-compose.production.yaml up\n```\n\n##### For AWS users\nIf you run this on AWS (such as EKS), you need to configure aws-cli setting. \nFollow the [official document](https://docs.aws.amazon.com/streams/latest/dev/kinesis-tutorial-cli-installation.html). \n\n**Rekcurd-dashboard docker container will mount the configuration files, \nso the IAM account used by configuration needs to have enough permissions to access to Kubernetes resources on AWS.**\n\n```bash\n# For dev\n$ docker-compose -f docker-compose/aws/docker-compose.develop.yaml up\n# For prod\n$ docker-compose -f docker-compose/aws/docker-compose.production.yaml up\n```\n\n## How to use WebUI\nSee [docs](./docs/README.md) in detail.\n\n\n## Test\n### Unittest\n```bash\n$ python -m unittest test/*/test_*\n```\n\n### e2e test\n```bash\n## sudo sh scripts/kube-init.sh\n$ sudo sh e2e_test/startup.sh\n$ python -m unittest\n$ sudo sh e2e_test/cleanup.sh\n```\n\n\n## Kubernetes support\nRekcurd can be run on Kubernetes. See [community repository](https://github.com/rekcurd/community).\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/rekcurd/dashboard", "keywords": "Rekcurd,Kubernetes,Python,gRPC,Restful", "license": "Apache License Version 2.0", "maintainer": "", "maintainer_email": "", "name": "rekcurd-dashboard", "package_url": "https://pypi.org/project/rekcurd-dashboard/", "platform": "", "project_url": "https://pypi.org/project/rekcurd-dashboard/", "project_urls": { "Homepage": "https://github.com/rekcurd/dashboard" }, "release_url": "https://pypi.org/project/rekcurd-dashboard/1.0.1.post6/", "requires_dist": [ "Flask (==1.0.3)", "Flask-Cors (>=3.0.4)", "grpcio (>=1.22.0)", "grpcio-tools (>=1.22.0)", "python-json-logger (>=0.1.9)", "fluent-logger (>=0.9.3)", "PyYAML (>=3.12)", "SQLAlchemy (>=1.2.7)", "PyMySQL (>=0.8.0)", "flask-sqlalchemy (>=2.3.2)", "kubernetes (<10.0.0,>=v8.0.0)", "flask-restplus (>=0.11.0)", "Flask-Testing (>=0.7.1)", "Flask-JWT-Simple (>=0.0.3)", "python-ldap (>=3.1.0)", "Flask-Migrate (>=2.2.1)", "Flask-Script (>=2.0.6)", "protobuf3-to-dict (>=0.1.5)", "boto (>=2.49.0)", "boto3 (>=1.9.38)", "urllib3 (>=1.24.2)" ], "requires_python": "", "summary": "A WebUI for managing machine learning services of Rekcurd.", "version": "1.0.1.post6" }, "last_serial": 5616042, "releases": { "0.4.4": [ { "comment_text": "", "digests": { "md5": "14efb208ccad644d1f63b06c1313d190", "sha256": "f4a29a08fbe5f03968715457e45ba99b8ceae72b5633cf93b7308cd192f59795" }, "downloads": -1, "filename": "rekcurd_dashboard-0.4.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "14efb208ccad644d1f63b06c1313d190", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 312614, "upload_time": "2019-01-15T23:52:15", "url": "https://files.pythonhosted.org/packages/22/8e/63e4e0661ffd867c0b0e2ab9812590f1715bbc7383bde9c42537acefbb48/rekcurd_dashboard-0.4.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b523fe9ce281a3e85832213d3610108a", "sha256": "19f4fab5de86c4bdcfcb44a1e0361b17bc9e5b0cacf2368ecb0efafdf153e2b3" }, "downloads": -1, "filename": "rekcurd_dashboard-0.4.4.tar.gz", "has_sig": false, "md5_digest": "b523fe9ce281a3e85832213d3610108a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35415, "upload_time": "2019-01-15T23:52:17", "url": "https://files.pythonhosted.org/packages/a7/cf/544a4a880f4e5ff713665b9e0a5491c1d70caa287a2b88351699344be56e/rekcurd_dashboard-0.4.4.tar.gz" } ], "0.4.4a3": [ { "comment_text": "", "digests": { "md5": "41067a25d912fcb3d3909ee874b1dcdc", "sha256": "cbd07c57c7241631254eba376db3ca3f76ff8196a3091fb2564b04d31e3fcefd" }, "downloads": -1, "filename": "rekcurd_dashboard-0.4.4a3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "41067a25d912fcb3d3909ee874b1dcdc", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 312640, "upload_time": "2019-01-11T08:32:51", "url": "https://files.pythonhosted.org/packages/ba/0c/e8feea4daa7c05f692a1ed3903e84332c9146e440b82b26b93e8a2bf5ca9/rekcurd_dashboard-0.4.4a3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "477bec787d7f6f6719987db4415b9651", "sha256": "fb4461098ee421ff619faf04a5b2dffe5801f26953a5025ab7f552010dd3e933" }, "downloads": -1, "filename": "rekcurd_dashboard-0.4.4a3.tar.gz", "has_sig": false, "md5_digest": "477bec787d7f6f6719987db4415b9651", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35407, "upload_time": "2019-01-11T08:32:53", "url": "https://files.pythonhosted.org/packages/6f/44/c37faa3d05d5cb1c0d5d0bf4c1411793ad6b7bae28b065573b53825df045/rekcurd_dashboard-0.4.4a3.tar.gz" } ], "0.4.5": [ { "comment_text": "", "digests": { "md5": "fd1a2003dace4ed250b32a0cfec5c39c", "sha256": "41e319cd7736c6b707b70d044be82e11439f61b97c4c8dbaa26a4e780a397151" }, "downloads": -1, "filename": "rekcurd_dashboard-0.4.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fd1a2003dace4ed250b32a0cfec5c39c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 314613, "upload_time": "2019-01-30T07:50:00", "url": "https://files.pythonhosted.org/packages/cc/a5/b94dc66ad805839d508f02fbcbf40decfcd7b8bec5525c5a4df0234ac12f/rekcurd_dashboard-0.4.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9e1a5589f8e48ed1e321bc86b14f47fc", "sha256": "795a290a0ba08b1b50a9e134e545bb291b3d411e15181790997600c54654103e" }, "downloads": -1, "filename": "rekcurd_dashboard-0.4.5.tar.gz", "has_sig": false, "md5_digest": "9e1a5589f8e48ed1e321bc86b14f47fc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39395, "upload_time": "2019-01-30T07:50:01", "url": "https://files.pythonhosted.org/packages/7b/e5/ffbb38368ec3b001702111a05790deec74daa7ce790776fb27d43d203628/rekcurd_dashboard-0.4.5.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "44873e4c085dc27b4820fc902d083a73", "sha256": "8f45c46c54e96d99eb0a9e8742adc9ed1c5ba521ebcf657e4b451bae176c9714" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "44873e4c085dc27b4820fc902d083a73", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 343094, "upload_time": "2019-04-26T06:20:55", "url": "https://files.pythonhosted.org/packages/1a/17/d4392e48db739b6a77c58d5d6ff9458cbd0bed51878bb3bfdf14a9d6784a/rekcurd_dashboard-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "98be24e3385ae984dd93cfff543f8af9", "sha256": "f5ff2a1503fdc5f723e96318a87edf60b01a74f2f9b88cd73bacec89721280c0" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.0.tar.gz", "has_sig": false, "md5_digest": "98be24e3385ae984dd93cfff543f8af9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 42967, "upload_time": "2019-04-26T06:20:57", "url": "https://files.pythonhosted.org/packages/b6/95/ba2ccb3f06ffe341a28cbda1ccd1ef75342ba356d21d2c8ff76f4f505cc4/rekcurd_dashboard-1.0.0.tar.gz" } ], "1.0.0a0": [ { "comment_text": "", "digests": { "md5": "bf4ec937b7118f0d65ec0239af5c9676", "sha256": "cb688285d584ead6dc9cfa6157acdc944928837bb11342300ddffd0a0b62f6c4" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.0a0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bf4ec937b7118f0d65ec0239af5c9676", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 343125, "upload_time": "2019-04-26T05:40:25", "url": "https://files.pythonhosted.org/packages/94/23/6abc37058c690ea294997d9fcbee9b5366551bb7c809c5d31cb87994e904/rekcurd_dashboard-1.0.0a0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e8f346b16fd4f4bd2f710833dda6f67f", "sha256": "2aabeb870ec521ab0963b5fa8e713e06fc47108e79def22f85d0a841f6d4d97c" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.0a0.tar.gz", "has_sig": false, "md5_digest": "e8f346b16fd4f4bd2f710833dda6f67f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 42972, "upload_time": "2019-04-26T05:40:28", "url": "https://files.pythonhosted.org/packages/d2/37/ab7170ca532a444878d4c2c9354c8343423590b157781835bafb36303b1a/rekcurd_dashboard-1.0.0a0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "a2167c928626f7100e76893fb2e33fb9", "sha256": "2713751faaf4cec3a7eb4d74675a0be46e027639775d7d57d50d600db2ebe311" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a2167c928626f7100e76893fb2e33fb9", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 353312, "upload_time": "2019-07-31T04:46:09", "url": "https://files.pythonhosted.org/packages/f2/3d/19edae0a90db5168dc3628ae77a1c704061f2f8d4de07dfeeca67b154847/rekcurd_dashboard-1.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5e310eaf92226606783854658aa77084", "sha256": "8f2e9e54671ddaeeb470363e825a490779185b355f8c9c16e0c9bfcb59a85bd9" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1.tar.gz", "has_sig": false, "md5_digest": "5e310eaf92226606783854658aa77084", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47221, "upload_time": "2019-07-31T04:46:11", "url": "https://files.pythonhosted.org/packages/fd/df/4b211c5cbf841b5c296960733f54b6675298808d8e1088aba8953f4833b5/rekcurd_dashboard-1.0.1.tar.gz" } ], "1.0.1.post1": [ { "comment_text": "", "digests": { "md5": "c4e0d3e84643bec8f7d2b0c98644daed", "sha256": "9b1e47fe341ef6e479a8e9a3dc7bfc8f7e48c67dadc3fa14d58f22ae121d5745" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1.post1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c4e0d3e84643bec8f7d2b0c98644daed", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 357036, "upload_time": "2019-07-31T13:22:02", "url": "https://files.pythonhosted.org/packages/7d/61/55b70cdc69a2e216c3537a8515f90276645e89cd9a8bcc9005bc5978a4bf/rekcurd_dashboard-1.0.1.post1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4741b91541d76643d4dec717ac4f5059", "sha256": "cde7a5a5f9e3df438aab6ff224326c72db1601d5debd80c8fc97afc8da39e9e4" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1.post1.tar.gz", "has_sig": false, "md5_digest": "4741b91541d76643d4dec717ac4f5059", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 48509, "upload_time": "2019-07-31T13:22:05", "url": "https://files.pythonhosted.org/packages/c6/ec/3a215e23a0ca8f4c688cb5f7ef0b60bf3db6ddeaed6227e6a42abaafef1a/rekcurd_dashboard-1.0.1.post1.tar.gz" } ], "1.0.1.post2": [ { "comment_text": "", "digests": { "md5": "0d1981a00c14bb2caa11f32838946181", "sha256": "fe5bb6eecfa86e714cfdfba2f4d845a0246d6c0bfd4c09563798faf6ce681c81" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1.post2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0d1981a00c14bb2caa11f32838946181", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 357037, "upload_time": "2019-07-31T13:41:56", "url": "https://files.pythonhosted.org/packages/b1/37/622e483bf67ecd1be271dcf1a7cd3885032ab03de8dbdda0513438ace1a2/rekcurd_dashboard-1.0.1.post2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d360a6964d99ba90976bdf341b944c9a", "sha256": "3596170303f7615a4bee5e0ada633a557ba7acea61255e20363296cc6a4d9d0b" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1.post2.tar.gz", "has_sig": false, "md5_digest": "d360a6964d99ba90976bdf341b944c9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 48517, "upload_time": "2019-07-31T13:41:58", "url": "https://files.pythonhosted.org/packages/88/61/ceaabb0df6ea6fe3eaced7a24ae3a132c3e66c68724a3903bfffb3fe284d/rekcurd_dashboard-1.0.1.post2.tar.gz" } ], "1.0.1.post3": [ { "comment_text": "", "digests": { "md5": "d7b53c3b0a8210ddc45eff7fa34777ea", "sha256": "52d3cf686f38c85efaa7bce270d75b8a270fd3e1303c008481233e6550c4e1ee" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1.post3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d7b53c3b0a8210ddc45eff7fa34777ea", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 78864, "upload_time": "2019-07-31T14:06:35", "url": "https://files.pythonhosted.org/packages/c8/6b/46c7a007486064e8214ac614a61781904945c0e9fd762dc55683cefc329e/rekcurd_dashboard-1.0.1.post3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ce101d98b12fe48c0edf353d6c11c80b", "sha256": "8ac5112677d083d1a436fa41793177733088a27f4b16a045019072a4734853a2" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1.post3.tar.gz", "has_sig": false, "md5_digest": "ce101d98b12fe48c0edf353d6c11c80b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 53322, "upload_time": "2019-07-31T14:06:37", "url": "https://files.pythonhosted.org/packages/b4/56/b0fd746f56a712bb318f3dbc3885ce5bb4d9acf5db473bf5bd86af7f1846/rekcurd_dashboard-1.0.1.post3.tar.gz" } ], "1.0.1.post4": [ { "comment_text": "", "digests": { "md5": "ee2819848f37921b4f1b343e038ca8cb", "sha256": "ef83a7a578b8be80f2df700ceb4bc733279a935d01a5746313db3f1ab6be8f7f" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1.post4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ee2819848f37921b4f1b343e038ca8cb", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 357670, "upload_time": "2019-07-31T14:12:50", "url": "https://files.pythonhosted.org/packages/fe/bf/077e881773f403e6a184dbee5bd783cefdbc3565557630ae8b16e73a5c50/rekcurd_dashboard-1.0.1.post4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b469a0284b66ff01bc2bc054fc139613", "sha256": "b41ce2cd0db31c87ff16c9d9e6fcf56f947ee6696a9e8a0dd9ae625b6e724c6e" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1.post4.tar.gz", "has_sig": false, "md5_digest": "b469a0284b66ff01bc2bc054fc139613", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 331075, "upload_time": "2019-07-31T14:12:52", "url": "https://files.pythonhosted.org/packages/cf/2e/23b68b5d6cfe586e9dfda2cac49818c293972c85fadfa0c4ebad9e98ab51/rekcurd_dashboard-1.0.1.post4.tar.gz" } ], "1.0.1.post5": [ { "comment_text": "", "digests": { "md5": "b64c7c5552fa30514aea067bde902e9e", "sha256": "aa896d202565d2368235906a17997a08e6d4abf31b28897b4be56b04564799a1" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1.post5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b64c7c5552fa30514aea067bde902e9e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 357672, "upload_time": "2019-07-31T14:50:51", "url": "https://files.pythonhosted.org/packages/93/d7/07618910f1db7debb0413ad92cd1cb2021c046f3a7deea8e6db4fffe5f98/rekcurd_dashboard-1.0.1.post5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "82c54cd7c7e43e486b9bf456542460fe", "sha256": "d916d0d77ea2f484f95954c355e89063891c22b53db1ed8244dd276adcc90f33" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1.post5.tar.gz", "has_sig": false, "md5_digest": "82c54cd7c7e43e486b9bf456542460fe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 331071, "upload_time": "2019-07-31T14:50:53", "url": "https://files.pythonhosted.org/packages/40/f1/ae8488065fdb295de7b5e18c4f64b3bd5c702f12218c90fd8162f0413c5e/rekcurd_dashboard-1.0.1.post5.tar.gz" } ], "1.0.1.post6": [ { "comment_text": "", "digests": { "md5": "53d4eca97bb85c33dcb962d94e5f9585", "sha256": "ec13ef461351a3bbfcfeebcfba76f0c6c7c2a6875e27a7a34cd7b335a7a197ce" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1.post6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "53d4eca97bb85c33dcb962d94e5f9585", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 357868, "upload_time": "2019-07-31T23:46:43", "url": "https://files.pythonhosted.org/packages/49/9c/c84d1f458adc3159ccc7fc0ca8b9d0b2e95c737795a8c71c00a76ca39cb8/rekcurd_dashboard-1.0.1.post6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e3d2ecb173d0ac63047b601835769eab", "sha256": "7872bc7c733cbdd63d8933a50ad3de3f6c61736fdcf36203a5be37724ea4c33e" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1.post6.tar.gz", "has_sig": false, "md5_digest": "e3d2ecb173d0ac63047b601835769eab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 331261, "upload_time": "2019-07-31T23:46:45", "url": "https://files.pythonhosted.org/packages/d0/95/bdcd51ba53e989314e9eb9da93c5e1bddbd0f5e6b457482b500879d14c2f/rekcurd_dashboard-1.0.1.post6.tar.gz" } ], "1.0.1a0": [ { "comment_text": "", "digests": { "md5": "5681606942409e2d98f0c8cce1655b61", "sha256": "83fa4a776c2268b2da15b0d2bf0f93be7277fe5e8180b92294e1e62c779c4260" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1a0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5681606942409e2d98f0c8cce1655b61", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 343123, "upload_time": "2019-04-26T06:32:53", "url": "https://files.pythonhosted.org/packages/34/2f/5d743d55bdabf2ab40bc7112adaa321f20bf8d8e3a56ebe40a2f4309bd2f/rekcurd_dashboard-1.0.1a0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d94a0c11fa75339f8048a19965ee758f", "sha256": "6979b11dc85c32be9aa8951e76165497f6717dc15287aad7effa10c481eaf4ef" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1a0.tar.gz", "has_sig": false, "md5_digest": "d94a0c11fa75339f8048a19965ee758f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 42968, "upload_time": "2019-04-26T06:32:55", "url": "https://files.pythonhosted.org/packages/eb/32/b451a3cc72609b3e8b799b0cb715a5d6e47bbd5df18d41a2d197fa3659c2/rekcurd_dashboard-1.0.1a0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "53d4eca97bb85c33dcb962d94e5f9585", "sha256": "ec13ef461351a3bbfcfeebcfba76f0c6c7c2a6875e27a7a34cd7b335a7a197ce" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1.post6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "53d4eca97bb85c33dcb962d94e5f9585", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 357868, "upload_time": "2019-07-31T23:46:43", "url": "https://files.pythonhosted.org/packages/49/9c/c84d1f458adc3159ccc7fc0ca8b9d0b2e95c737795a8c71c00a76ca39cb8/rekcurd_dashboard-1.0.1.post6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e3d2ecb173d0ac63047b601835769eab", "sha256": "7872bc7c733cbdd63d8933a50ad3de3f6c61736fdcf36203a5be37724ea4c33e" }, "downloads": -1, "filename": "rekcurd_dashboard-1.0.1.post6.tar.gz", "has_sig": false, "md5_digest": "e3d2ecb173d0ac63047b601835769eab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 331261, "upload_time": "2019-07-31T23:46:45", "url": "https://files.pythonhosted.org/packages/d0/95/bdcd51ba53e989314e9eb9da93c5e1bddbd0f5e6b457482b500879d14c2f/rekcurd_dashboard-1.0.1.post6.tar.gz" } ] }