{"id":20703839,"url":"https://github.com/euiyounghwang/python-swagger-restful-api","last_synced_at":"2026-05-09T07:34:20.687Z","repository":{"id":233373769,"uuid":"787102904","full_name":"euiyounghwang/python-swagger-restful-api","owner":"euiyounghwang","description":"python-swagger-restful-api","archived":false,"fork":false,"pushed_at":"2025-03-10T18:24:47.000Z","size":1232,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-10T19:35:16.488Z","etag":null,"topics":["elasticsearch","elasticsearch-client","elasticsearch-cluster","elasticsearch-indices","elasticsearch-mappings","elasticsearch-monitor","fastapi"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/euiyounghwang.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-15T22:28:07.000Z","updated_at":"2025-03-10T18:24:36.000Z","dependencies_parsed_at":"2024-04-24T02:44:04.125Z","dependency_job_id":"50b09f4a-b3ea-47c5-a82b-1ec2efd553f3","html_url":"https://github.com/euiyounghwang/python-swagger-restful-api","commit_stats":null,"previous_names":["euiyounghwang/python-swagger-restful-api"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/euiyounghwang/python-swagger-restful-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/euiyounghwang%2Fpython-swagger-restful-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/euiyounghwang%2Fpython-swagger-restful-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/euiyounghwang%2Fpython-swagger-restful-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/euiyounghwang%2Fpython-swagger-restful-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/euiyounghwang","download_url":"https://codeload.github.com/euiyounghwang/python-swagger-restful-api/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/euiyounghwang%2Fpython-swagger-restful-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":27760398,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-12-16T02:00:10.477Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["elasticsearch","elasticsearch-client","elasticsearch-cluster","elasticsearch-indices","elasticsearch-mappings","elasticsearch-monitor","fastapi"],"created_at":"2024-11-17T01:09:45.318Z","updated_at":"2025-12-16T06:22:24.028Z","avatar_url":"https://github.com/euiyounghwang.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# python-swagger-restful-api\n\u003ci\u003epython-swagger-restful-api\n\nFastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.8+ based on standard Python type hints.\n\nThe key features are:\n\n- Fast: Very high performance, on par with NodeJS and Go (thanks to Starlette and Pydantic). One of the fastest Python frameworks available.\n- Fast to code: Increase the speed to develop features by about 200% to 300%. *\n- Fewer bugs: Reduce about 40% of human (developer) induced errors. *\n- Intuitive: Great editor support. Completion everywhere. Less time debugging.\n- Easy: Designed to be easy to use and learn. Less time reading docs.\n- Short: Minimize code duplication. Multiple features from each parameter declaration. Fewer bugs.\n- Robust: Get production-ready code. With automatic interactive documentation.\n- Standards-based: Based on (and fully compatible with) the open standards for APIs: OpenAPI (previously known as Swagger) and JSON Schema.\n\n\n### Install Poerty\n```\nhttps://python-poetry.org/docs/?ref=dylancastillo.co#installing-with-the-official-installer\n```\n\n\n### Using Python Virtual Environment\n```bash\npython -m venv .venv\nsource .venv/bin/activate\n```\n\n\n### Using Poetry: Create the virtual environment in the same directory as the project and install the dependencies:\n```bash\npoetry config virtualenvs.in-project true\npoetry init\npoetry add fastapi\npoetry add uvicorn\npoetry add pytz\npoetry add httpx\npoetry add pytest\npoetry add pytest-cov\npoetry add requests\npoetry add pyyaml\npoetry add elasticsearch==7.13\npoetry add python-dotenv\n```\n\n\n### Pytest\n- Go to virtual enviroment using `source .venv/bin/activate`\n- Run this command manually: `poetry run py.test -v --junitxml=test-reports/junit/pytest.xml --cov-report html --cov tests/` or `./pytest.sh`\n```bash\nplatform win32 -- Python 3.11.7, pytest-8.1.1, pluggy-1.4.0 -- C:\\Users\\euiyoung.hwang\\Git_Workspace\\python-swagger-restful-api\\.venv\\Scripts\\python.exe\ncachedir: .pytest_cache\nrootdir: C:\\Users\\euiyoung.hwang\\Git_Workspace\\python-swagger-restful-api\\tests\nconfigfile: pytest.ini\nplugins: anyio-4.3.0, cov-5.0.0\ncollected 3 items\n```\n\n\n### CI/CD Environment\n- CircleCI (`./circleci/config.yml`): CircleCI is a continuous integration and continuous delivery platform that helps software teams work smarter, faster. With CircleCI, every commit kicks off a new job in our platform, and code is built, tested, and deployed. \n- Github Actions (`./.github/workflows/build-and-test.yml`) : GitHub Actions is a continuous integration and continuous delivery (CI/CD) platform that allows you to automate your build, test, and deployment pipeline. You can create workflows that build and test every pull request to your repository, or deploy merged pull requests to production.\n\n\n\n### Register Service\n- sudo service swagger_es_api status/stop/start/restart\n```bash\n#-- /etc/systemd/system/swagger_es_api.service\n[Unit]\nDescription=Swagger ES Service\n\n[Service]\nUser=devuser\nGroup=devuser\nType=simple\nExecStart=/bin/bash /home/devuser/Git_Repo/service-start.sh\nExecStop= /usr/bin/killall swagger_es_service\n\n[Install]\nWantedBy=default.target\n\n\n# Service command\nsudo systemctl daemon-reload \nsudo systemctl start swagger_es_service.service \nsudo systemctl status swagger_es_service.service \nsudo systemctl stop swagger_es_service.service \n\nsudo service swagger_es_service status/stop/start\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feuiyounghwang%2Fpython-swagger-restful-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feuiyounghwang%2Fpython-swagger-restful-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feuiyounghwang%2Fpython-swagger-restful-api/lists"}