{ "info": { "author": "Loi Nguyen", "author_email": "loinguyentrung@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 2" ], "description": "# Rest CLI [![Build Status](https://travis-ci.org/loint/rest-cli.svg?branch=master)](https://travis-ci.org/loint/rest-cli) [![PyPI version](https://badge.fury.io/py/rest-cli.svg)](https://badge.fury.io/py/rest-cli) [![Documentation](https://img.shields.io/badge/documentation-rest-ff69b4.svg)](https://loint.github.io/rest-cli/index.md)\n\n\n\nIf you love ?\n- Beautiful restful web service with **standard** architecture\n- The **fastest** way to get things done with less human coding\n- Easy way to **synchronize** from components to documentation\n- Well tested structure with **explicit** request & response\n- Powered by an **industrial** framework with outstanding performance\n\nThen this powerful tool is the right choice for you.\n\n### Prerequisite\n- Docker\n- Python 2.7 with pip\n- PHP 7.2 with composer\n\n### Installation\n```\n$ pip install rest-cli\n```\n\n### Road map\n- [x] Create web service base on a lightweight skeleton\n- [x] Database schema migration\n- [x] Reverse schema to model - repository - service and dependency injectors\n- [x] Support built-in query annotations\n- [x] Compile api routes and generate controller with integration tests\n- [x] Serve and test application\n- [x] Generate swagger documentation base on api routes (in-progress)\n- [ ] Support response header & type casting for complex Request\n- [ ] Support Service - Repository symbolic link to comply top down architecture\n- [ ] Export service interfaces for inter-communication\n- [ ] Support RPC exception via response verification\n\n### Usages\n1. Create web service application\n- --quite : Quite mode without asking anything about configuration\n- --force : Force creating application without complaining about existing project\n- --mysql : Start a mysql container with default information\n```\n$ rest create \n```\n2. Change directory to service and write some migrations at `src/Shared/Migration`\n```\n$ rest migrate\n```\n3. Synchronize model - repository - service - controller - test cases\n- To create some awesome apis, update your routes at `config/api/*.json`\n```\n$ rest sync\n```\n4. View route list\n- To see which routes are configured and manage apis\n```\n$ rest route\n```\n5. Serve your application to test in browser\n```\n$ rest serve\n```\n6. Test your application with PHPUnit\n```\n$ rest test\n```\n7. Check current version\n```\n$ rest version\n```\n8. Update new version of rest-cli ?\n```\n$ rest upgrade\n```\n9. Need more help ?\n```\n$ rest --help\n```\n### API Documentation\nAfter `rest sync` you can serve your service with `rest serve`\n\nSwagger Documentation should be ready at [http://localhost:8000/docs](http://localhost:8000/docs)\n\n### License\nRest CLI and related projects are licensed under the [MIT](LICENSE)\n\nThanks for the sponsor from [GO1 Company](http://go1.com)\n\n~ Happy Coding ~\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/loint/rest-cli", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "rest-cli", "package_url": "https://pypi.org/project/rest-cli/", "platform": "", "project_url": "https://pypi.org/project/rest-cli/", "project_urls": { "Homepage": "https://github.com/loint/rest-cli" }, "release_url": "https://pypi.org/project/rest-cli/0.0.3/", "requires_dist": [ "pytest", "click", "mysql-connector-python" ], "requires_python": "", "summary": "A perfect tool for creating Restful web service in PHP", "version": "0.0.3" }, "last_serial": 4013710, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "b1de9f4a111b93c2355460bab5359658", "sha256": "25cf320fb99da2c2e50d39dc8601ffc58721397726c57dd29e92f0c6d9be3f42" }, "downloads": -1, "filename": "rest_cli-0.0.1-py2.7.egg", "has_sig": false, "md5_digest": "b1de9f4a111b93c2355460bab5359658", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 33216, "upload_time": "2018-06-28T07:07:43", "url": "https://files.pythonhosted.org/packages/d7/84/8672caaeb0cc9e7fddf515171cd50a1bc0ec42c583f8af22acf827b79ffc/rest_cli-0.0.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "bc15eab54b97d6242db9de38d6366a81", "sha256": "d93efbf8441fe6a8593e1fa5c5e9910c533ddb36a5137a38bfead55ec6129577" }, "downloads": -1, "filename": "rest_cli-0.0.1-py2-none-any.whl", "has_sig": false, "md5_digest": "bc15eab54b97d6242db9de38d6366a81", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 14157, "upload_time": "2018-06-22T10:20:31", "url": "https://files.pythonhosted.org/packages/1f/75/9be8068d8cbd5e7853b2a9617881d0f09a002d031245c3171c0a714adad4/rest_cli-0.0.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "63e48535805d51fdb4d5dd8878750b5e", "sha256": "bc82b3a5148094c9e0d029e14f4aff0d26d1a752c9bfac3f73baf4407427a885" }, "downloads": -1, "filename": "rest-cli-0.0.1.tar.gz", "has_sig": false, "md5_digest": "63e48535805d51fdb4d5dd8878750b5e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12901, "upload_time": "2018-06-22T10:20:32", "url": "https://files.pythonhosted.org/packages/4b/23/5fede1133a23bdd7fb7fa6646911a0016ac9d1e571b120b9f242d9e854c5/rest-cli-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "f63d9e0b75fc95eafc68e7903c7cdd9f", "sha256": "f8945674e2661e30414908fca02ca7fad8e53e997895aab17fa00a4e8f54b62f" }, "downloads": -1, "filename": "rest_cli-0.0.2-py2.7.egg", "has_sig": false, "md5_digest": "f63d9e0b75fc95eafc68e7903c7cdd9f", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 33130, "upload_time": "2018-06-29T02:40:41", "url": "https://files.pythonhosted.org/packages/51/7d/ad9b0d4bd75528e36243870d2a9f862befb5883c29bb0c0f7682b70d3f7e/rest_cli-0.0.2-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "5145883472db7e7666e817566b1c767b", "sha256": "353d8ee1d036d302a77377873120bc307e6bb02c754a84fbb7723efc0aa23430" }, "downloads": -1, "filename": "rest_cli-0.0.2-py2-none-any.whl", "has_sig": false, "md5_digest": "5145883472db7e7666e817566b1c767b", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 16883, "upload_time": "2018-06-28T07:07:40", "url": "https://files.pythonhosted.org/packages/82/90/fe0e2e696cd7acb432e1065c20f11e5417d7c7b73fd366bfa363a88f9c11/rest_cli-0.0.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "656d3f2554d5c0c3309c6a47aaf3a596", "sha256": "aa2d4808ce155b81c55a42cf3c2ca6425e1f1173d702f605de74aa0cdd28ad35" }, "downloads": -1, "filename": "rest-cli-0.0.2.tar.gz", "has_sig": false, "md5_digest": "656d3f2554d5c0c3309c6a47aaf3a596", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15429, "upload_time": "2018-06-28T07:07:41", "url": "https://files.pythonhosted.org/packages/f4/48/4f878e93765ebf600d042ce3668f22fa1af3085d678ab061868004c1e1ba/rest-cli-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "06bbb54c389e99e6796e99bb502db98b", "sha256": "1972e38d55e96de28c0aa288749ae0eeaf0a7055b833da20bba4fe8e70519a24" }, "downloads": -1, "filename": "rest_cli-0.0.3-py2.7.egg", "has_sig": false, "md5_digest": "06bbb54c389e99e6796e99bb502db98b", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 33340, "upload_time": "2018-06-29T02:40:43", "url": "https://files.pythonhosted.org/packages/52/96/d599ce09c5b81fb7e02c438f48586c4e84929e5a2b53a5b340b323269519/rest_cli-0.0.3-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "6a24252cff7be6bad5b750f4177d5b81", "sha256": "dc9a125a3bd9bae0b07d8a71a3d92565a979427efbcc8923624e0e15b6116202" }, "downloads": -1, "filename": "rest_cli-0.0.3-py2-none-any.whl", "has_sig": false, "md5_digest": "6a24252cff7be6bad5b750f4177d5b81", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 17109, "upload_time": "2018-06-29T02:40:37", "url": "https://files.pythonhosted.org/packages/43/9b/3de21f40ef372bbb6b35b68de22909f88a82e260091c16d032d4f9f256ab/rest_cli-0.0.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bc8f8e186276444c5438c09b7f78b513", "sha256": "9ae38b07b06142e5a0e64fc052d0dee178628ea44cc4b3b8b33692b005e7a5bd" }, "downloads": -1, "filename": "rest-cli-0.0.3.tar.gz", "has_sig": false, "md5_digest": "bc8f8e186276444c5438c09b7f78b513", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16009, "upload_time": "2018-06-29T02:40:39", "url": "https://files.pythonhosted.org/packages/a7/68/14b4ce738fe9c9d425ae9e56d797210805ef0cd00ec27706106e0fbd7f77/rest-cli-0.0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "06bbb54c389e99e6796e99bb502db98b", "sha256": "1972e38d55e96de28c0aa288749ae0eeaf0a7055b833da20bba4fe8e70519a24" }, "downloads": -1, "filename": "rest_cli-0.0.3-py2.7.egg", "has_sig": false, "md5_digest": "06bbb54c389e99e6796e99bb502db98b", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 33340, "upload_time": "2018-06-29T02:40:43", "url": "https://files.pythonhosted.org/packages/52/96/d599ce09c5b81fb7e02c438f48586c4e84929e5a2b53a5b340b323269519/rest_cli-0.0.3-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "6a24252cff7be6bad5b750f4177d5b81", "sha256": "dc9a125a3bd9bae0b07d8a71a3d92565a979427efbcc8923624e0e15b6116202" }, "downloads": -1, "filename": "rest_cli-0.0.3-py2-none-any.whl", "has_sig": false, "md5_digest": "6a24252cff7be6bad5b750f4177d5b81", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 17109, "upload_time": "2018-06-29T02:40:37", "url": "https://files.pythonhosted.org/packages/43/9b/3de21f40ef372bbb6b35b68de22909f88a82e260091c16d032d4f9f256ab/rest_cli-0.0.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bc8f8e186276444c5438c09b7f78b513", "sha256": "9ae38b07b06142e5a0e64fc052d0dee178628ea44cc4b3b8b33692b005e7a5bd" }, "downloads": -1, "filename": "rest-cli-0.0.3.tar.gz", "has_sig": false, "md5_digest": "bc8f8e186276444c5438c09b7f78b513", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16009, "upload_time": "2018-06-29T02:40:39", "url": "https://files.pythonhosted.org/packages/a7/68/14b4ce738fe9c9d425ae9e56d797210805ef0cd00ec27706106e0fbd7f77/rest-cli-0.0.3.tar.gz" } ] }