<p align="center">
<img width="420px" src="https://i.ibb.co/0BPYdRk/luke.png" alt='py-luke'>
</p>
<p align="center">
<em>Working on OpenAPI easily.</em>
</p>
<p align="center">
<a href="https://github.com/magiskboy/luke/actions">
<img src="https://github.com/magiskboy/luke/actions/workflows/test-suite.yml/badge.svg" alt="Build Status">
</a>
<a href="https://app.codecov.io/gh/magiskboy/luke">
<img src="https://img.shields.io/codecov/c/github/magiskboy/luke" alt="Code coverage">
</a>
<a href="https://pypi.org/project/py-luke/">
<img src="https://img.shields.io/pypi/dd/py-luke" alt="Download PyPi">
</a>
<a href="https://github.com/magiskboy/luke/blob/main/LICENSE">
<img src="https://img.shields.io/github/license/magiskboy/luke" alt="MIT">
</a>
<a href="https://pypi.org/project/py-luke/">
<img src="https://img.shields.io/pypi/pyversions/py-luke" alt="Py version">
</a>
<a href="https://pypi.org/project/py-luke/">
<img src="https://img.shields.io/pypi/v/py-luke" alt="PyPi version">
</a>
</p>
## Features
Some of main features:
- Create a mock server for OpenAPI document
- Validate OpenAPI document with readable error messages
- Bundle OpenAPI fragments into the single document
py-luke supports both json and yaml type. Besides, you can also open file via path or URL.
## Installation
You can install py-luke from PyPi or Docker
```bash
$ pip install py-luke
$ docker run nguyenkhacthanh/luke:latest
```
## Usage
```bash
$ luke mock https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/examples/v3.0/petstore.yaml
```
or
```bash
$ docker run nguyenkhacthanh/latest validate https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/examples/v3.0/petstore.yaml
$ docker run -p8000:8000 nguyenkhacthanh/luke:latest mock https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/examples/v3.0/petstore.yaml
```
Raw data
{
"_id": null,
"home_page": "",
"name": "py-luke",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "",
"keywords": "bundle openapi,jsonschema,mock server,openapi,validate openapi",
"author": "",
"author_email": "Nguyen Khac Thanh <nguyenkhacthanh244@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/63/bd/2d8a1d754fb2d1073ce21ef2e3b01dd0937cd00b41a43d1f7c78d6df598d/py_luke-0.0.3.tar.gz",
"platform": null,
"description": "<p align=\"center\">\n <img width=\"420px\" src=\"https://i.ibb.co/0BPYdRk/luke.png\" alt='py-luke'>\n</p>\n<p align=\"center\">\n <em>Working on OpenAPI easily.</em>\n</p>\n<p align=\"center\">\n <a href=\"https://github.com/magiskboy/luke/actions\">\n <img src=\"https://github.com/magiskboy/luke/actions/workflows/test-suite.yml/badge.svg\" alt=\"Build Status\">\n </a>\n <a href=\"https://app.codecov.io/gh/magiskboy/luke\">\n <img src=\"https://img.shields.io/codecov/c/github/magiskboy/luke\" alt=\"Code coverage\">\n </a>\n <a href=\"https://pypi.org/project/py-luke/\">\n <img src=\"https://img.shields.io/pypi/dd/py-luke\" alt=\"Download PyPi\">\n </a>\n <a href=\"https://github.com/magiskboy/luke/blob/main/LICENSE\">\n <img src=\"https://img.shields.io/github/license/magiskboy/luke\" alt=\"MIT\">\n </a>\n <a href=\"https://pypi.org/project/py-luke/\">\n <img src=\"https://img.shields.io/pypi/pyversions/py-luke\" alt=\"Py version\">\n </a>\n <a href=\"https://pypi.org/project/py-luke/\">\n <img src=\"https://img.shields.io/pypi/v/py-luke\" alt=\"PyPi version\">\n </a>\n</p>\n\n\n## Features\n\nSome of main features:\n\n- Create a mock server for OpenAPI document\n- Validate OpenAPI document with readable error messages\n- Bundle OpenAPI fragments into the single document\n\npy-luke supports both json and yaml type. Besides, you can also open file via path or URL.\n\n## Installation\n\nYou can install py-luke from PyPi or Docker\n\n```bash\n$ pip install py-luke\n$ docker run nguyenkhacthanh/luke:latest\n```\n\n## Usage\n\n```bash\n$ luke mock https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/examples/v3.0/petstore.yaml\n```\n\nor\n\n```bash\n$ docker run nguyenkhacthanh/latest validate https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/examples/v3.0/petstore.yaml\n$ docker run -p8000:8000 nguyenkhacthanh/luke:latest mock https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/examples/v3.0/petstore.yaml\n```\n",
"bugtrack_url": null,
"license": "",
"summary": "Mock server for OpenAPI documentation",
"version": "0.0.3",
"project_urls": {
"Documentation": "https://github.com/magiskboy/luke#features",
"Homepage": "https://github.com/magiskboy/luke",
"Issues": "https://github.com/magiskboy/luke/issues/",
"Source": "https://github.com/magiskboy/luke"
},
"split_keywords": [
"bundle openapi",
"jsonschema",
"mock server",
"openapi",
"validate openapi"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "bb0f4e805eecf9b5780a1d87a2c55a8c934db6ee21afdb6f246b9ac081f9c95c",
"md5": "5b1895ea6283cea2b7f05ababfdab189",
"sha256": "acc7b548296ec683822340d0464bc3d63b1aa798f91a1e62af5e357ea23206ca"
},
"downloads": -1,
"filename": "py_luke-0.0.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5b1895ea6283cea2b7f05ababfdab189",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 11582,
"upload_time": "2023-07-02T23:23:18",
"upload_time_iso_8601": "2023-07-02T23:23:18.221098Z",
"url": "https://files.pythonhosted.org/packages/bb/0f/4e805eecf9b5780a1d87a2c55a8c934db6ee21afdb6f246b9ac081f9c95c/py_luke-0.0.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "63bd2d8a1d754fb2d1073ce21ef2e3b01dd0937cd00b41a43d1f7c78d6df598d",
"md5": "77ce7ec1d57874586edbc9d5650d618d",
"sha256": "25590aba4adcbf9f90cb7373761f205cd6ef0c7f7dfe15a29d6cd28767b214f1"
},
"downloads": -1,
"filename": "py_luke-0.0.3.tar.gz",
"has_sig": false,
"md5_digest": "77ce7ec1d57874586edbc9d5650d618d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 14042,
"upload_time": "2023-07-02T23:23:19",
"upload_time_iso_8601": "2023-07-02T23:23:19.492579Z",
"url": "https://files.pythonhosted.org/packages/63/bd/2d8a1d754fb2d1073ce21ef2e3b01dd0937cd00b41a43d1f7c78d6df598d/py_luke-0.0.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-07-02 23:23:19",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "magiskboy",
"github_project": "luke#features",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "py-luke"
}