{"id":19704911,"url":"https://github.com/lmashik/cat_charity_fund","last_synced_at":"2026-05-10T20:39:42.574Z","repository":{"id":183765890,"uuid":"667181588","full_name":"lmashik/cat_charity_fund","owner":"lmashik","description":"Сервис для благотворительного фонда - внесение пожертвований в нецелевые проекты","archived":false,"fork":false,"pushed_at":"2023-11-08T21:47:07.000Z","size":59,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-27T17:23:26.574Z","etag":null,"topics":["alembic","fastapi","python37","sqlalchemy","uvicorn"],"latest_commit_sha":null,"homepage":"","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/lmashik.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":"2023-07-16T22:54:56.000Z","updated_at":"2023-11-08T22:56:55.000Z","dependencies_parsed_at":"2024-11-11T21:26:34.298Z","dependency_job_id":"e0603c25-2ae4-44bd-9b77-4af3cc3d138f","html_url":"https://github.com/lmashik/cat_charity_fund","commit_stats":null,"previous_names":["lmashik/cat_charity_fund"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/lmashik/cat_charity_fund","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lmashik%2Fcat_charity_fund","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lmashik%2Fcat_charity_fund/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lmashik%2Fcat_charity_fund/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lmashik%2Fcat_charity_fund/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lmashik","download_url":"https://codeload.github.com/lmashik/cat_charity_fund/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lmashik%2Fcat_charity_fund/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32871536,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-10T13:40:02.631Z","status":"ssl_error","status_checked_at":"2026-05-10T13:40:02.145Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["alembic","fastapi","python37","sqlalchemy","uvicorn"],"created_at":"2024-11-11T21:25:12.315Z","updated_at":"2026-05-10T20:39:42.545Z","avatar_url":"https://github.com/lmashik.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Кошачий благотворительный фонд QRKot\n\n----------------------------------------\n## Описание\n\nДанный сервис создан для поддержки хвостатых. Пользователи могут внести пожертвование, \nсопроводив его комментарием или пожеланием. Администраторы сервиса создают проекты в помощь \nприютам для животных и другим заинтересованным. Проекты не целевые: распределение средств \nпроисходит автоматически в порядке создания проектов.\n\n----------------------------------------\n## Используемые технологии\n\n - Python 3.7\n - FastAPI (веб-фреймворк для создания API)\n - SQLAlchemy (библиотека для работы с реляционными СУБД с применением технологии ORM)\n - Pydantic (библиотека для валидации и сериализации данных)\n - Alembic (инструмент для миграции базы данных)\n - Uvicorn (высокопроизводительный ASGI сервер)\n \n----------------------------------------\n## Установка\n\n1. Клонируйте репозиторий\n```bash\ngit clone https://github.com/lmashik/cat_charity_fund.git\n```\n\n2. Создайте и активируйте виртуальное окружение\n```bash\npython3 -m venv env\n```\n\n* Если у вас Linux/macOS\n\n    ```bash\n    source env/bin/activate\n    ```\n\n* Если у вас windows\n\n    ```bash\n    source env/scripts/activate\n    ```\n\n3. Обновите pip до последней версии\n```bash\npython3 -m pip install --upgrade pip\n```\n\n4. Установите зависимости из файла requirements.txt\n```bash\npip install -r requirements.txt\n```\n\n----------------------------------------\n## Запуск\n\nВ директории проекта создайте файл .env и заполните его по образцу \n.env.example\n\nПримените миграции\n```bash\nalembic upgrade head\n```\n\nЗапустите проект\n```bash\nuvicorn app.main:app --reload\n```\n\nДля того чтобы открыть документацию проекта, перейдите по ссылке http://127.0.0.1:8000/docs/ после запуска проекта.\n\n----------------------------------------\n## API\nДанный сервис является API, так что может быть интегрирован в вашу систему.\n\n### Формат запроса\nЗапрос осуществляется посредством протокола HTTP 1.1.\n\n### Формат ответа\nОтвет сервиса представляет собой JSON-документ в кодировке UTF-8, \nсодержимое зависит от запроса.\n\n### Ресурсы\nQRKot имеет три ресурса: Проекты, Пожертвования и Пользователи.\nРабота с пользователями осуществляется с помощью стандартного модуля FastAPI Users.\n\nСписок проектов может быть просмотрен любым пользователем сервиса. Создание, редактирование \nи удаление проектов доступно только суперпользователям.\n\nПожертвование может сделать любой пользователь. Также он может посмотреть список \nсвоих пожертвований. Суперпользователь может посмотреть список всех пожертвований.\n\nДля регистрации выполните POST запрос на http://127.0.0.1:8000/auth/register:\n```bash\ncurl -X 'POST' \\\n  'http://127.0.0.1:8000/auth/register' \\\n  -H 'accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\n  \"email\": \"user@example.com\",\n  \"password\": \"your_password\"\n  }'\n```\n\nДля аутентификации и получения токена выполните POST запрос на http://127.0.0.1:8000/auth/jwt/loginЖ\n```bash\ncurl -X 'POST' \\\n  'http://127.0.0.1:8000/auth/jwt/login' \\\n  -H 'accept: application/json' \\\n  -H 'Content-Type: application/x-www-form-urlencoded' \\\n  -d 'grant_type=\u0026username=username\u0026password=password\u0026scope=\u0026client_id=\u0026client_secret='\n```\n\nПример ответа в случае успешного выполнения:\n```json\n{\n  \"access_token\": \"token\",\n  \"token_type\": \"bearer\"\n}\n```\n\nДалее используйте этот токен при остальных запросах к сервису - передавайте его в заголовках запросов. \n\n**Пример**\n\nДля создания нового пожертвования выполните POST запрос на http://127.0.0.1:8000/donation/,\nпример которого ниже:\n```bash\ncurl -X 'POST' \\\n  'http://127.0.0.1:8000/donation/' \\\n  -H 'accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\n  \"comment\": \"От всей души\",\n  \"full_amount\": 450\n  }'\n```\n\nПример ответа в случае успешного выполнения\n_HTTP 1.1 200 OK_\n```json\n{\n  \"comment\": \"От всей души\",\n  \"full_amount\": 450,\n  \"id\": 2,\n  \"create_date\": \"2023-07-22T03:21:26.369602\"\n}\n```\n\n----------------------------------------\n## Автор проекта\n\nЛапикова Мария Дмитриевна  \nmashik_p@mail.ru\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flmashik%2Fcat_charity_fund","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flmashik%2Fcat_charity_fund","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flmashik%2Fcat_charity_fund/lists"}