{"id":15288719,"url":"https://github.com/aminalaee/fastapi-storages","last_synced_at":"2025-12-14T15:42:49.541Z","repository":{"id":65717151,"uuid":"593553117","full_name":"aminalaee/fastapi-storages","owner":"aminalaee","description":"FastAPI backend storages and ORM extensions","archived":false,"fork":false,"pushed_at":"2024-09-06T07:55:51.000Z","size":687,"stargazers_count":81,"open_issues_count":7,"forks_count":9,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-04-02T06:09:06.133Z","etag":null,"topics":["fastapi","orm","python","sqlalchemy","starlette"],"latest_commit_sha":null,"homepage":"https://aminalaee.dev/fastapi-storages","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/aminalaee.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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-01-26T09:45:34.000Z","updated_at":"2025-03-20T11:55:07.000Z","dependencies_parsed_at":"2023-06-03T17:15:44.717Z","dependency_job_id":"db6b1247-0be2-41c7-94cb-459a73cf2e8e","html_url":"https://github.com/aminalaee/fastapi-storages","commit_stats":null,"previous_names":["aminalaee/fastapi-storages","aminalaee/sqlalchemy-fields"],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aminalaee%2Ffastapi-storages","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aminalaee%2Ffastapi-storages/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aminalaee%2Ffastapi-storages/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aminalaee%2Ffastapi-storages/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aminalaee","download_url":"https://codeload.github.com/aminalaee/fastapi-storages/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248008630,"owners_count":21032556,"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":["fastapi","orm","python","sqlalchemy","starlette"],"created_at":"2024-09-30T15:52:27.505Z","updated_at":"2025-12-14T15:42:49.534Z","avatar_url":"https://github.com/aminalaee.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n\u003ca href=\"https://github.com/aminalaee/fastapi-storages\"\u003e\n    \u003cimg width=\"500px\" src=\"https://raw.githubusercontent.com/aminalaee/fastapi-storages/main/docs/assets/images/banner.png\" alt\"FastAPI_Storages\"\u003e\n\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\u003ca href=\"https://github.com/aminalaee/fastapi-storages/actions\"\u003e\n    \u003cimg src=\"https://github.com/aminalaee/fastapi-storages/workflows/Tests/badge.svg\" alt=\"Build Status\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/aminalaee/fastapi-storages/actions\"\u003e\n    \u003cimg src=\"https://github.com/aminalaee/fastapi-storages/workflows/Publish/badge.svg\" alt=\"Publish Status\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://codecov.io/gh/aminalaee/fastapi-storages\"\u003e\n    \u003cimg src=\"https://codecov.io/gh/aminalaee/fastapi-storages/branch/main/graph/badge.svg\" alt=\"Coverage\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://pypi.org/project/fastapi-storages/\"\u003e\n    \u003cimg src=\"https://badge.fury.io/py/fastapi-storages.svg\" alt=\"Package version\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://pypi.org/project/fastapi-storages\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://img.shields.io/pypi/pyversions/fastapi-storages.svg?color=%2334D058\" alt=\"Supported Python versions\"\u003e\n\u003c/a\u003e\n\u003c/p\u003e\n\n---\n\n# FastAPI Storages\n\nA collection of backend storages and ORM extensions to simplify file management in FastAPI and Starlette projects.\n\nSimilar to `django-storages` project, but aiming to work with a wider range of database ORMs and backends.\n\n---\n\n**Documentation**: [https://aminalaee.github.io/fastapi-storages](https://aminalaee.github.io/fastapi-storages)\n\n**Source Code**: [https://github.com/aminalaee/fastapi-storages](https://github.com/aminalaee/fastapi-storages)\n\n---\n\n## Installation\n\n```console\npip install fastapi-storages\npip install 'fastapi-storages[full]'\n```\n\n## Supported integrations\n\n- `SQLAlchemy`\n- `SQLModel`\n- `SQLAdmin`\n\n## Supported storage backends\n\n- `FileSystemStorage`\n- `S3Storage`\n\n## Example\n\n```python\nfrom fastapi import FastAPI, UploadFile\nfrom sqlalchemy import Column, Integer, create_engine\nfrom sqlalchemy.orm import Session, declarative_base\nfrom fastapi_storages import FileSystemStorage\nfrom fastapi_storages.integrations.sqlalchemy import FileType\n\napp = FastAPI()\nBase = declarative_base()\nengine = create_engine(\"sqlite:///test.db\")\n\n\nclass Example(Base):\n    __tablename__ = \"example\"\n\n    id = Column(Integer, primary_key=True)\n    file = Column(FileType(storage=FileSystemStorage(path=\"/tmp\")))\n\n\n# Create database and table\nBase.metadata.create_all(engine)\n\n\n@app.post(\"/upload/\")\ndef create_upload_file(file: UploadFile):\n    example = Example(file=file)\n    with Session(engine) as session:\n        session.add(example)\n        session.commit()\n        return {\"filename\": example.file.name}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faminalaee%2Ffastapi-storages","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faminalaee%2Ffastapi-storages","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faminalaee%2Ffastapi-storages/lists"}