{"id":15020955,"url":"https://github.com/pyronear/pyro-api","last_synced_at":"2025-10-24T09:28:37.564Z","repository":{"id":37795499,"uuid":"299974141","full_name":"pyronear/pyro-api","owner":"pyronear","description":"Alert Management API for wildfire prevention, detection \u0026 monitoring. Built with FastAPI \u0026 PostgreSQL","archived":false,"fork":false,"pushed_at":"2024-10-27T11:52:43.000Z","size":7833,"stargazers_count":21,"open_issues_count":32,"forks_count":9,"subscribers_count":9,"default_branch":"main","last_synced_at":"2024-10-29T13:39:06.262Z","etag":null,"topics":["api-rest","docker","fastapi","postgresql","python","wildfire-management"],"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/pyronear.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":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"pyronear","patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2020-09-30T15:59:41.000Z","updated_at":"2024-10-26T15:09:09.000Z","dependencies_parsed_at":"2023-09-21T19:28:33.271Z","dependency_job_id":"afc93f0c-f0c8-40b1-bd88-692721e4d458","html_url":"https://github.com/pyronear/pyro-api","commit_stats":{"total_commits":226,"total_committers":10,"mean_commits":22.6,"dds":"0.40265486725663713","last_synced_commit":"40cda4aa84d801f908d66730a74b379aee57aec1"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyronear%2Fpyro-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyronear%2Fpyro-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyronear%2Fpyro-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyronear%2Fpyro-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pyronear","download_url":"https://codeload.github.com/pyronear/pyro-api/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230261048,"owners_count":18198656,"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":["api-rest","docker","fastapi","postgresql","python","wildfire-management"],"created_at":"2024-09-24T19:55:56.223Z","updated_at":"2025-10-24T09:28:37.499Z","avatar_url":"https://github.com/pyronear.png","language":"Python","funding_links":["https://github.com/sponsors/pyronear"],"categories":[],"sub_categories":[],"readme":"# Pyronear API\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/pyronear/pyro-api/actions?query=workflow%3Abuilds\"\u003e\n    \u003cimg alt=\"CI Status\" src=\"https://img.shields.io/github/actions/workflow/status/pyronear/pyro-api/builds.yml?branch=main\u0026label=CI\u0026logo=github\u0026style=flat-square\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"http://pyronear-api.herokuapp.com/redoc\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/actions/workflow/status/pyronear/pyro-api/builds.yml?brain=main\u0026label=docs\u0026logo=read-the-docs\u0026style=flat-square\" alt=\"Documentation Status\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://codecov.io/gh/pyronear/pyro-api\"\u003e\n    \u003cimg src=\"https://img.shields.io/codecov/c/github/pyronear/pyro-api.svg?logo=codecov\u0026style=flat-square\" alt=\"Test coverage percentage\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/ambv/black\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/code%20style-black-000000.svg?style=flat-square\" alt=\"black\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://www.codacy.com/gh/pyronear/pyro-api/dashboard?utm_source=github.com\u0026amp;utm_medium=referral\u0026amp;utm_content=pyronear/pyro-api\u0026amp;utm_campaign=Badge_Grade\"\u003e\u003cimg src=\"https://app.codacy.com/project/badge/Grade/3bea1a63e4aa44258cfd08831d713478\"/\u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://pypi.org/project/pyroclient/\"\u003e\n    \u003cimg src=\"https://img.shields.io/pypi/v/pyroclient.svg?logo=python\u0026logoColor=fff\u0026style=flat-square\" alt=\"PyPi Status\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://anaconda.org/pyronear/pyroclient\"\u003e\n    \u003cimg alt=\"Anaconda\" src=\"https://img.shields.io/conda/vn/pyronear/pyroclient?style=flat-square?style=flat-square\u0026logo=Anaconda\u0026logoColor=white\u0026label=conda\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://hub.docker.com/r/pyronear/alert-api\"\u003e\n    \u003cimg alt=\"Docker Image Version\" src=\"https://img.shields.io/docker/v/pyronear/alert-api?style=flat-square\u0026logo=Docker\u0026logoColor=white\u0026label=docker\"\u003e\n  \u003c/a\u003e\n  \u003cimg src=\"https://img.shields.io/pypi/pyversions/pyroclient.svg?style=flat-square\" alt=\"pyversions\"\u003e\n  \u003cimg src=\"https://img.shields.io/pypi/l/pyroclient.svg?style=flat-square\" alt=\"license\"\u003e\n\u003c/p\u003e\n\n\nThe building blocks of our wildfire detection \u0026 monitoring API.\n\n## Quick Tour\n\n### Running/stopping the service\n\nYou can run the API containers using this command:\n\n```shell\nmake run\n```\n\nYou can now navigate to `http://localhost:8080/docs` to interact with the API (or do it through HTTP requests) and explore the documentation.\n\n![Swagger](https://github.com/pyronear/pyro-api/releases/download/v0.1.2/swagger_interface.png)\n\nIn order to stop the service, run:\n```shell\nmake stop\n```\n\n## Installation\n\n### Prerequisites\n\n- [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git)\n- [Docker](https://docs.docker.com/engine/install/)\n- [Docker compose](https://docs.docker.com/compose/)\n\n### Starting your service\n\n#### 1 - Clone the repository\n```shell\ngit clone https://github.com/pyronear/pyro-api.git \u0026\u0026 cd pyro-api\n```\n#### 2 - Set your environment variables\nFirst copy the example environment setup\n```shell\ncp .env.example .env\n```\n\n#### 3 - Start the services\n\n```shell\ndocker compose pull\ndocker compose up\n```\n\n#### 4 - Check how what you've deployed\n\nYou can now access your backend API at [http://localhost:5050/docs](http://localhost:5050/docs)\n\n\n## More goodies\n\n### Python client\n\nThis project is a REST-API, and you can interact with the service through HTTP requests. However, if you want to ease the integration into a Python project, take a look at our [Python client](client).\n\n\n## Contributing\n\nAny sort of contribution is greatly appreciated!\n\nYou can find a short guide in [`CONTRIBUTING`](CONTRIBUTING.md) to help grow this project!\n\n\n\n## License\n\nDistributed under the Apache 2.0 License. See [`LICENSE`](LICENSE) for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpyronear%2Fpyro-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpyronear%2Fpyro-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpyronear%2Fpyro-api/lists"}