{"id":16871,"name":"openapm","description":"OpenAPM: ligthweight APM for HTTP FastAPI backend applications","url":"https://github.com/frgfm/openapm","last_synced_at":"2025-09-04T23:23:20.953Z","repository":{"id":264542241,"uuid":"893107292","full_name":"frgfm/openapm","owner":"frgfm","description":"OpenAPM: ligthweight APM for HTTP FastAPI backend applications","archived":false,"fork":false,"pushed_at":"2025-04-07T11:56:59.000Z","size":100,"stargazers_count":0,"open_issues_count":3,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-29T18:58:40.022Z","etag":null,"topics":["apm","backend","fastapi","http","middleware","postgres","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/frgfm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":".github/CODEOWNERS","security":".github/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"frgfm","patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2024-11-23T14:55:37.000Z","updated_at":"2025-01-06T15:45:12.000Z","dependencies_parsed_at":"2024-12-30T14:36:20.264Z","dependency_job_id":"1ddcee60-916e-4003-b335-6df68f2c829d","html_url":"https://github.com/frgfm/openapm","commit_stats":null,"previous_names":["frgfm/openapm"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/frgfm/openapm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frgfm%2Fopenapm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frgfm%2Fopenapm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frgfm%2Fopenapm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frgfm%2Fopenapm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/frgfm","download_url":"https://codeload.github.com/frgfm/openapm/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frgfm%2Fopenapm/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273686040,"owners_count":25149817,"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-09-04T02:00:08.968Z","response_time":61,"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"}},"owner":{"login":"frgfm","name":"F-G Fernandez","uuid":"26927750","kind":"user","description":"Deep Learning Engineer by day, Open Source contributor by night :bat: ","email":"","website":"https://relaycli.com/manifesto","location":"Paris, FR","twitter":"FrG_FM","company":"@relaycli @pyronear","icon_url":"https://avatars.githubusercontent.com/u/26927750?u=dfbafc3534a42845875b527483a134ec48bfe6f9\u0026v=4","repositories_count":55,"last_synced_at":"2025-08-29T18:07:12.620Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/frgfm","funding_links":["https://github.com/sponsors/frgfm"],"total_stars":2811,"followers":222,"following":16,"created_at":"2022-11-15T05:34:32.257Z","updated_at":"2025-08-29T18:07:12.620Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/frgfm","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/frgfm/repositories"},"packages":[],"commits":{"id":7184630,"full_name":"frgfm/openapm","default_branch":"master","committers":null,"total_commits":null,"total_committers":null,"total_bot_commits":null,"total_bot_committers":null,"mean_commits":null,"dds":null,"past_year_committers":null,"past_year_total_commits":null,"past_year_total_committers":null,"past_year_total_bot_commits":null,"past_year_total_bot_committers":null,"past_year_mean_commits":null,"past_year_dds":null,"last_synced_at":null,"last_synced_commit":null,"created_at":"2024-12-02T19:38:16.380Z","updated_at":"2024-12-02T19:38:16.380Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/frgfm%2Fopenapm/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-04T00:00:25.936Z","repositories_count":5480019,"commits_count":853389012,"contributors_count":31098138,"owners_count":906558,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"frgfm/openapm","html_url":"https://github.com/frgfm/openapm","last_synced_at":"2025-08-31T07:52:25.748Z","status":null,"issues_count":0,"pull_requests_count":53,"avg_time_to_close_issue":null,"avg_time_to_close_pull_request":517511.4347826087,"issues_closed_count":0,"pull_requests_closed_count":46,"pull_request_authors_count":2,"issue_authors_count":0,"avg_comments_per_issue":null,"avg_comments_per_pull_request":1.3962264150943395,"merged_pull_requests_count":13,"bot_issues_count":0,"bot_pull_requests_count":46,"past_year_issues_count":0,"past_year_pull_requests_count":53,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":517511.4347826087,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":46,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":1.3962264150943395,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":46,"past_year_merged_pull_requests_count":13,"created_at":"2024-12-02T19:38:20.203Z","updated_at":"2025-09-03T06:53:33.222Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/frgfm%2Fopenapm","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/frgfm%2Fopenapm/issues","issue_labels_count":{},"pull_request_labels_count":{"dependencies":53,"service: client":48,"python":47,"ext: ci":14,"type: misc":14,"service: server":12,"func: build":12,"topic: docs":9,"topic: style":6,"github_actions":6,"type: improvement":5,"type: feat":5,"module: database":2,"type: fix":2,"ext: tests":2},"issue_author_associations_count":{},"pull_request_author_associations_count":{"CONTRIBUTOR":52,"OWNER":14,"NONE":1},"issue_authors":{},"pull_request_authors":{"dependabot[bot]":53,"frgfm":14},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-04T00:00:25.939Z","repositories_count":10072086,"issues_count":31257663,"pull_requests_count":95517173,"authors_count":10689807,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{"dependencies":53,"service: client":48,"python":47,"ext: ci":14,"type: misc":14,"service: server":12,"func: build":12,"topic: docs":9,"topic: style":6,"github_actions":6,"type: improvement":5,"type: feat":5,"module: database":2,"type: fix":2,"ext: tests":2},"past_year_issue_author_associations_count":{},"past_year_pull_request_author_associations_count":{"CONTRIBUTOR":52,"OWNER":14,"NONE":1},"past_year_issue_authors":{},"past_year_pull_request_authors":{"dependabot[bot]":53,"frgfm":14},"maintainers":[{"login":"frgfm","count":14,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/frgfm"}],"active_maintainers":[{"login":"frgfm","count":14,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/frgfm"}]},"events":{"total":{"DeleteEvent":27,"IssueCommentEvent":42,"PushEvent":26,"PullRequestReviewEvent":3,"PullRequestEvent":65,"ForkEvent":1,"CreateEvent":36},"last_year":{"DeleteEvent":27,"IssueCommentEvent":42,"PushEvent":26,"PullRequestReviewEvent":3,"PullRequestEvent":65,"ForkEvent":1,"CreateEvent":36}},"keywords":["apm","backend","fastapi","http","middleware","postgres","python"],"dependencies":[{"ecosystem":"actions","filepath":".github/workflows/build.yml","sha":null,"kind":"manifest","created_at":"2024-12-30T14:36:16.569Z","updated_at":"2024-12-30T14:36:16.569Z","repository_link":"https://github.com/frgfm/openapm/blob/main/.github/workflows/build.yml","dependencies":[{"id":21321824062,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":21321824063,"package_name":"astral-sh/setup-uv","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false},{"id":21321824064,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/pr-edited.yml","sha":null,"kind":"manifest","created_at":"2024-12-30T14:36:16.646Z","updated_at":"2024-12-30T14:36:16.646Z","repository_link":"https://github.com/frgfm/openapm/blob/main/.github/workflows/pr-edited.yml","dependencies":[{"id":21321824086,"package_name":"amannn/action-semantic-pull-request","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/pr-merged.yml","sha":null,"kind":"manifest","created_at":"2024-12-30T14:36:16.731Z","updated_at":"2024-12-30T14:36:16.731Z","repository_link":"https://github.com/frgfm/openapm/blob/main/.github/workflows/pr-merged.yml","dependencies":[{"id":21321824103,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":21321824104,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false},{"id":21321824105,"package_name":"actions/github-script","ecosystem":"actions","requirements":"v7","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/push.yml","sha":null,"kind":"manifest","created_at":"2024-12-30T14:36:16.807Z","updated_at":"2024-12-30T14:36:16.807Z","repository_link":"https://github.com/frgfm/openapm/blob/main/.github/workflows/push.yml","dependencies":[{"id":21321824122,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":21321824123,"package_name":"astral-sh/setup-uv","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false},{"id":21321824124,"package_name":"docker/login-action","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/style.yml","sha":null,"kind":"manifest","created_at":"2024-12-30T14:36:16.876Z","updated_at":"2024-12-30T14:36:16.876Z","repository_link":"https://github.com/frgfm/openapm/blob/main/.github/workflows/style.yml","dependencies":[{"id":21321824134,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":21321824135,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false},{"id":21321824136,"package_name":"astral-sh/setup-uv","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/tests.yml","sha":null,"kind":"manifest","created_at":"2024-12-30T14:36:16.946Z","updated_at":"2024-12-30T14:36:16.946Z","repository_link":"https://github.com/frgfm/openapm/blob/main/.github/workflows/tests.yml","dependencies":[{"id":21321824143,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":21321824144,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false},{"id":21321824145,"package_name":"astral-sh/setup-uv","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false},{"id":21321824146,"package_name":"frgfm/validate-python-headers","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/triage.yml","sha":null,"kind":"manifest","created_at":"2024-12-30T14:36:17.718Z","updated_at":"2024-12-30T14:36:17.718Z","repository_link":"https://github.com/frgfm/openapm/blob/main/.github/workflows/triage.yml","dependencies":[{"id":21321824774,"package_name":"actions/labeler","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"docker","filepath":"docker-compose.yml","sha":null,"kind":"manifest","created_at":"2024-12-30T14:36:18.301Z","updated_at":"2024-12-30T14:36:18.301Z","repository_link":"https://github.com/frgfm/openapm/blob/main/docker-compose.yml","dependencies":[{"id":21321825059,"package_name":"postgres","ecosystem":"docker","requirements":"15-alpine","direct":true,"kind":"runtime","optional":false},{"id":21321825060,"package_name":"openapm/backend","ecosystem":"docker","requirements":"latest","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"docker","filepath":"server/Dockerfile","sha":null,"kind":"manifest","created_at":"2024-12-30T14:36:19.948Z","updated_at":"2024-12-30T14:36:19.948Z","repository_link":"https://github.com/frgfm/openapm/blob/main/server/Dockerfile","dependencies":[{"id":21321825910,"package_name":"python","ecosystem":"docker","requirements":"3.11-slim","direct":true,"kind":"build","optional":false}]},{"ecosystem":"pypi","filepath":"client/pyproject.toml","sha":null,"kind":"manifest","created_at":"2024-12-30T14:36:20.019Z","updated_at":"2024-12-30T14:36:20.019Z","repository_link":"https://github.com/frgfm/openapm/blob/main/client/pyproject.toml","dependencies":[{"id":21321825946,"package_name":"requests","ecosystem":"pypi","requirements":"\u003e=2.31.0,\u003c3.0.0","direct":true,"kind":"runtime","optional":false},{"id":21321825947,"package_name":"fastapi","ecosystem":"pypi","requirements":"\u003e=0.109.1,\u003c1.0.0","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"client/setup.py","sha":null,"kind":"manifest","created_at":"2024-12-30T14:36:20.100Z","updated_at":"2024-12-30T14:36:20.100Z","repository_link":"https://github.com/frgfm/openapm/blob/main/client/setup.py","dependencies":[]},{"ecosystem":"pypi","filepath":"server/pyproject.toml","sha":null,"kind":"manifest","created_at":"2024-12-30T14:36:20.147Z","updated_at":"2024-12-30T14:36:20.147Z","repository_link":"https://github.com/frgfm/openapm/blob/main/server/pyproject.toml","dependencies":[{"id":21321825994,"package_name":"fastapi","ecosystem":"pypi","requirements":"\u003e=0.109.1,\u003c1.0.0","direct":true,"kind":"runtime","optional":false},{"id":21321825995,"package_name":"sqlmodel","ecosystem":"pypi","requirements":"\u003e=0.0.22,\u003c0.1.0","direct":true,"kind":"runtime","optional":false},{"id":21321825996,"package_name":"pydantic","ecosystem":"pypi","requirements":"\u003e=2.0.0,\u003c3.0.0","direct":true,"kind":"runtime","optional":false},{"id":21321825997,"package_name":"pydantic-settings","ecosystem":"pypi","requirements":"\u003e=2.0.0,\u003c3.0.0","direct":true,"kind":"runtime","optional":false},{"id":21321825998,"package_name":"requests","ecosystem":"pypi","requirements":"\u003e=2.32.0,\u003c3.0.0","direct":true,"kind":"runtime","optional":false},{"id":21321825999,"package_name":"uvicorn","ecosystem":"pypi","requirements":"\u003e=0.23.0,\u003c1.0.0","direct":true,"kind":"runtime","optional":false},{"id":21321826000,"package_name":"asyncpg","ecosystem":"pypi","requirements":"\u003e=0.29.0,\u003c1.0.0","direct":true,"kind":"runtime","optional":false},{"id":21321826001,"package_name":"sentry-sdk","ecosystem":"pypi","requirements":"[fastapi]\u003e=2.14.0,\u003c3.0.0","direct":true,"kind":"runtime","optional":false}]}],"score":null,"created_at":"2025-09-04T15:50:47.933Z","updated_at":"2025-10-07T08:08:52.642Z","avatar_url":"https://github.com/frgfm.png","language":"Python","category":null,"sub_category":null,"monthly_downloads":0,"funding_links":["https://github.com/sponsors/frgfm"],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://science.ecosyste.ms/api/v1/projects/16871","html_url":"https://science.ecosyste.ms/projects/16871","bibtex_url":"https://science.ecosyste.ms/projects/16871/export.bibtex","apalike_url":"https://science.ecosyste.ms/projects/16871/export.apalike"}