{"id":14065717,"url":"https://github.com/4Catalyzer/flask-resty","last_synced_at":"2025-07-29T21:33:00.115Z","repository":{"id":35399109,"uuid":"39663289","full_name":"4Catalyzer/flask-resty","owner":"4Catalyzer","description":"Building blocks for REST APIs for Flask","archived":false,"fork":false,"pushed_at":"2025-04-25T18:53:19.000Z","size":870,"stargazers_count":86,"open_issues_count":22,"forks_count":13,"subscribers_count":13,"default_branch":"master","last_synced_at":"2025-05-24T00:02:08.371Z","etag":null,"topics":["flask"],"latest_commit_sha":null,"homepage":"https://flask-resty.readthedocs.io/en/latest/","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/4Catalyzer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","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,"zenodo":null}},"created_at":"2015-07-24T23:29:49.000Z","updated_at":"2024-12-05T21:20:37.000Z","dependencies_parsed_at":"2023-10-24T22:26:36.560Z","dependency_job_id":"fa51d62c-3589-483e-9748-e35b6c3ffd76","html_url":"https://github.com/4Catalyzer/flask-resty","commit_stats":{"total_commits":492,"total_committers":21,"mean_commits":"23.428571428571427","dds":"0.33333333333333337","last_synced_commit":"64a858b9f0e0bc4ff9f9e37111055ebc1788d80c"},"previous_names":[],"tags_count":125,"template":false,"template_full_name":null,"purl":"pkg:github/4Catalyzer/flask-resty","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/4Catalyzer%2Fflask-resty","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/4Catalyzer%2Fflask-resty/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/4Catalyzer%2Fflask-resty/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/4Catalyzer%2Fflask-resty/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/4Catalyzer","download_url":"https://codeload.github.com/4Catalyzer/flask-resty/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/4Catalyzer%2Fflask-resty/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267763633,"owners_count":24140824,"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-07-29T02:00:12.549Z","response_time":2574,"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":["flask"],"created_at":"2024-08-13T07:04:39.561Z","updated_at":"2025-07-29T21:32:59.758Z","avatar_url":"https://github.com/4Catalyzer.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# Flask-RESTy [![GitHub Actions][build-badge]][build] [![Codecov][codecov-badge]][codecov] [![PyPI][pypi-badge]][pypi] [![marshmallow 3 compatible][marshmallow-badge]][marshmallow-upgrading]\n\nFlask-RESTy provides building blocks for creating REST APIs with [Flask](http://flask.pocoo.org/), [SQLAlchemy](https://www.sqlalchemy.org/), and [marshmallow](https://marshmallow.readthedocs.io/).\n\n```python\nfrom flask_resty import Api, GenericModelView\n\nfrom . import app, models, schemas\n\n\nclass WidgetViewBase(GenericModelView):\n    model = models.Widget\n    schema = schemas.WidgetSchema()\n\n\nclass WidgetListView(WidgetViewBase):\n    def get(self):\n        return self.list()\n\n    def post(self):\n        return self.create()\n\n\nclass WidgetView(WidgetViewBase):\n    def get(self, id):\n        return self.retrieve(id)\n\n    def patch(self, id):\n        return self.update(id, partial=True)\n\n    def delete(self, id):\n        return self.destroy(id)\n\n\napi = Api(app, \"/api\")\napi.add_resource(\"/widgets\", WidgetListView, WidgetView)\n```\n\n## Documentation\n\nDocumentation is available at https://flask-resty.readthedocs.io/.\n\n## License\n\nMIT Licensed. See the bundled [LICENSE](https://github.com/4Catalyzer/flask-resty/blob/master/LICENSE) file for more details.\n\n[build-badge]: https://github.com/4Catalyzer/flask-resty/actions/workflows/main.yml/badge.svg\n[build]: https://github.com/4Catalyzer/flask-resty/actions\n[pypi-badge]: https://img.shields.io/pypi/v/Flask-RESTy.svg\n[pypi]: https://pypi.python.org/pypi/Flask-RESTy\n[codecov-badge]: https://img.shields.io/codecov/c/github/4Catalyzer/flask-resty/master.svg\n[codecov]: https://codecov.io/gh/4Catalyzer/flask-resty\n[marshmallow-badge]: https://badgen.net/badge/marshmallow/3\n[marshmallow-upgrading]: https://marshmallow.readthedocs.io/en/latest/upgrading.html\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F4Catalyzer%2Fflask-resty","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F4Catalyzer%2Fflask-resty","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F4Catalyzer%2Fflask-resty/lists"}