{"id":16195269,"url":"https://github.com/mrf345/flask_restful_api_production_example","last_synced_at":"2026-05-02T04:35:16.520Z","repository":{"id":47203922,"uuid":"258621730","full_name":"mrf345/flask_restful_api_production_example","owner":"mrf345","description":"Flask restful API production example","archived":false,"fork":false,"pushed_at":"2021-09-08T15:43:32.000Z","size":46,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-07T15:55:16.760Z","etag":null,"topics":["api","example","flask","production","restful"],"latest_commit_sha":null,"homepage":"https://925b1pnu98.execute-api.us-east-2.amazonaws.com/production","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mrf345.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-04-24T20:52:47.000Z","updated_at":"2024-06-13T21:46:27.000Z","dependencies_parsed_at":"2022-09-06T07:02:13.919Z","dependency_job_id":null,"html_url":"https://github.com/mrf345/flask_restful_api_production_example","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/mrf345/flask_restful_api_production_example","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrf345%2Fflask_restful_api_production_example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrf345%2Fflask_restful_api_production_example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrf345%2Fflask_restful_api_production_example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrf345%2Fflask_restful_api_production_example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mrf345","download_url":"https://codeload.github.com/mrf345/flask_restful_api_production_example/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrf345%2Fflask_restful_api_production_example/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32523427,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-02T01:12:54.858Z","status":"online","status_checked_at":"2026-05-02T02:00:05.923Z","response_time":132,"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":["api","example","flask","production","restful"],"created_at":"2024-10-10T08:26:53.250Z","updated_at":"2026-05-02T04:35:16.506Z","avatar_url":"https://github.com/mrf345.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\u003ch2 align='center'\u003eFlask restful API production example\u003c/h2\u003e\n\u003cp align='center'\u003e\n    There's a \u003ca href='https://925b1pnu98.execute-api.us-east-2.amazonaws.com/production'\u003elive demo\u003c/a\u003e of the project hosted on AWS Lambda functions.\n    \u003cbr /\u003e\u003cbr /\u003e\n    \u003ca href='https://github.com/mrf345/flask_restful_api_production_example/actions' target='_blank' style='margin-right: 2%'\u003e\n        \u003cimg alt='Actions Status' src='https://github.com/mrf345/flask_restful_api_production_example/workflows/CI/badge.svg' /\u003e\n    \u003c/a\u003e\n    \u003ca href='https://coveralls.io/github/mrf345/flask_restful_api_production_example?branch=master'\u003e\n        \u003cimg src='https://coveralls.io/repos/github/mrf345/flask_restful_api_production_example/badge.svg?branch=master' alt='Coverage Status' /\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n\n### Setup\n##### - With docker:\nMake sure `docker` and `docker-compose` are installed and run `docker-compose up`\n\n##### - Or from the source instead:\nMake sure `Python 3.7` and `pip` are installed and then:\n- `pip install -r requirements/core.py`\n- `DEVELOPEMENT=\"True\" FLASK_APP=\"app\" flask run`\n\n##### - To run tests and linting\n- Tests `make tests`\n- Linting `make lint`\n\n### Intro\n##### - Features and Stack\n- Swagger OpenAPI2 API with `Flask-Restx`\n- Database migration with `Flask-Migrate`\n- Containerized local dev environment with `Docker`\n- AWS RDS and lambda deployment ready with `Zappa`\n- Errors monitoring and reporting with `Sentry`\n- Github actions testing, linting and deployment with `PyTest` and `Flake8`. \n\n\n##### - Project structure\n\u003cpre\u003e\n.\n├── app.py\n├── docker-compose.yml\n├── Dockerfile\n├── LICENSE\n├── Makefile\n├── migrations\n│   ├── alembic.ini\n│   ├── env.py\n│   ├── README.md\n│   ├── script.py.mako\n│   └── versions\n│       └── d826e674004f_.py\n├── README.md\n├── requester\n│   ├── api\n│   │   ├── auth.py\n│   │   ├── endpoints\n│   │   │   ├── features.py\n│   │   │   ├── __init__.py\n│   │   │   └── users.py\n│   │   ├── __init__.py\n│   │   ├── limiter.py\n│   │   └── setup.py\n│   ├── config.py\n│   ├── constants.py\n│   ├── database\n│   │   ├── defaults.py\n│   │   ├── __init__.py\n│   │   ├── mixins.py\n│   │   ├── models.py\n│   │   ├── relations.py\n│   │   └── setup.py\n│   ├── __init__.py\n│   ├── main.py\n│   └── utils.py\n├── requirements\n│   ├── core.txt\n│   ├── deploy.txt\n│   └── test.txt\n├── tests\n│   ├── conftest.py\n│   ├── features.py\n│   ├── __init__.py\n│   └── users.py\n├── upgrade_db.sh\n└── zappa_settings.json\n\u003c/pre\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrf345%2Fflask_restful_api_production_example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmrf345%2Fflask_restful_api_production_example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrf345%2Fflask_restful_api_production_example/lists"}