Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/pyronear/pyro-api

Alert Management API for wildfire prevention, detection & monitoring
https://github.com/pyronear/pyro-api

api-rest docker fastapi postgresql python wildfire-management

Last synced: 28 days ago
JSON representation

Alert Management API for wildfire prevention, detection & monitoring

Awesome Lists containing this project

README

        

# Pyronear API



CI Status


Documentation Status


Test coverage percentage


black





PyPi Status


Anaconda


Docker Image Version

pyversions
license

The building blocks of our wildfire detection & monitoring API.

## Quick Tour

### Running/stopping the service

You can run the API containers using this command:

```shell
make run
```

You can now navigate to `http://localhost:8080/docs` to interact with the API (or do it through HTTP requests) and explore the documentation.

![Swagger](https://github.com/pyronear/pyro-api/releases/download/v0.1.2/swagger_interface.png)

In order to stop the service, run:
```shell
make stop
```

## Installation

### Prerequisites

- [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git)
- [Docker](https://docs.docker.com/engine/install/)
- [Docker compose](https://docs.docker.com/compose/)

### Starting your service

#### 1 - Clone the repository
```shell
git clone https://github.com/pyronear/pyro-api.git && cd pyro-api
```
#### 2 - Set your environment variables
First copy the example environment setup
```shell
cp .env.example .env
```

#### 3 - Start the services

```shell
docker compose pull
docker compose up
```

#### 4 - Check how what you've deployed

You can now access your backend API at [http://localhost:5050/docs](http://localhost:5050/docs)

## More goodies

### Python client

This 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).

## Contributing

Any sort of contribution is greatly appreciated!

You can find a short guide in [`CONTRIBUTING`](CONTRIBUTING.md) to help grow this project!

## License

Distributed under the Apache 2.0 License. See [`LICENSE`](LICENSE) for more information.