{"id":21459923,"url":"https://github.com/juftin/zoo","last_synced_at":"2025-07-15T02:31:53.873Z","repository":{"id":190078135,"uuid":"673508931","full_name":"juftin/zoo","owner":"juftin","description":"An asynchronous zoo API, powered by FastAPI, SQLAlchemy 2.0, Pydantic v2, and Alembic","archived":false,"fork":false,"pushed_at":"2024-04-01T13:10:40.000Z","size":276,"stargazers_count":7,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-08T19:52:20.115Z","etag":null,"topics":["alembic","async","fastapi","pydantic","python","sqlalchemy"],"latest_commit_sha":null,"homepage":"https://juftin.com/zoo","language":"Python","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/juftin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"docs/contributing.md","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":"2023-08-01T19:40:44.000Z","updated_at":"2024-09-16T03:53:20.000Z","dependencies_parsed_at":"2024-11-23T06:37:21.615Z","dependency_job_id":"792eb231-a8c4-4290-8f09-5211a182235f","html_url":"https://github.com/juftin/zoo","commit_stats":null,"previous_names":["juftin/zoo"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/juftin/zoo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juftin%2Fzoo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juftin%2Fzoo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juftin%2Fzoo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juftin%2Fzoo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/juftin","download_url":"https://codeload.github.com/juftin/zoo/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juftin%2Fzoo/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265390888,"owners_count":23757605,"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","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":["alembic","async","fastapi","pydantic","python","sqlalchemy"],"created_at":"2024-11-23T06:37:09.740Z","updated_at":"2025-07-15T02:31:53.349Z","avatar_url":"https://github.com/juftin.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv style=\"text-align: center;\"\u003e\n  \u003cp style=\"margin-bottom: 0;\" align=\"center\"\u003e\n    \u003cimg src=\"https://i.imgur.com/Gdbh2Dj.png\" width=\"400\"\u003e\n  \u003c/p\u003e\n  \u003cp style=\"font-size: 36px; margin-top: 0;\" align=\"center\"\u003e\n    ZOO\n  \u003c/p\u003e\n\u003c/div\u003e\n\nAn asynchronous zoo API, powered by [FastAPI](https://fastapi.tiangolo.com/),\n[SQLAlchemy 2.0](https://www.sqlalchemy.org/), [Pydantic v2](https://docs.pydantic.dev/latest/),\nand [Alembic](https://alembic.sqlalchemy.org/en/latest/).\n\n### [Documentation](https://juftin.com/zoo/)\n\n## What is this?\n\n`zoo` is a simple API example project that allows you to manage a zoo.\nIt uses all the basic building blocks of a modern API, including\n\n-   [x] Asynchronous ASGI Framework ([FastAPI](https://fastapi.tiangolo.com/))\n-   [x] Production Ready Server ([Uvicorn](https://www.uvicorn.org/))\n-   [x] Modern SQL ORM ([SQLAlchemy 2.0](https://www.sqlalchemy.org/))\n-   [x] Data Validation ([Pydantic v2](https://docs.pydantic.dev/latest/))\n-   [x] Authentication ([fastapi-users](https://frankie567.github.io/fastapi-users/))\n-   [x] Database Migrations ([Alembic](https://alembic.sqlalchemy.org/en/latest/))\n-   [x] Docker Images ([Docker](https://www.docker.com/))\n-   [x] Documentation ([mkdocs-material](https://squidfunk.github.io/mkdocs-material/))\n-   [x] Testing ([pytest](https://docs.pytest.org/))\n-   [x] CI/CD ([GitHub Actions](https://github.com/features/actions))\n-   [x] Python Environment Management ([hatch](https://github.com/pypa/hatch))\n-   [x] Release Automation ([semantic-release](https://github.com/semantic-release/semantic-release))\n-   [ ] Serverless Deployment ([Mangum](https://magnum-ci.com/) + [AWS Lambda](https://aws.amazon.com/lambda/))\n-   [ ] Worker Queues ([Celery](https://docs.celeryproject.org/en/stable/))\n-   [ ] API Caching ([redis](https://redis.io/))\n-   [ ] What else?\n\nThis project is meant to be a starting point for building your own API,\nit outlines the basic structure of an API project and provides a few\nexamples of how to implement common features.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuftin%2Fzoo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjuftin%2Fzoo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuftin%2Fzoo/lists"}