{"id":13948331,"url":"https://github.com/forefireAPI/forefire","last_synced_at":"2025-07-20T10:30:38.920Z","repository":{"id":14534996,"uuid":"17249751","full_name":"forefireAPI/firefront","owner":"forefireAPI","description":"ForeFire is an open-source code for wildland fire spread models","archived":false,"fork":false,"pushed_at":"2024-10-23T12:03:28.000Z","size":9190,"stargazers_count":37,"open_issues_count":0,"forks_count":20,"subscribers_count":7,"default_branch":"master","last_synced_at":"2024-10-29T19:52:12.489Z","etag":null,"topics":["cpp","python"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/forefireAPI.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2014-02-27T13:34:40.000Z","updated_at":"2024-09-26T15:56:51.000Z","dependencies_parsed_at":"2023-09-23T13:13:18.186Z","dependency_job_id":"931c6cb4-23e4-4411-ba9b-e6d820856850","html_url":"https://github.com/forefireAPI/firefront","commit_stats":{"total_commits":268,"total_committers":16,"mean_commits":16.75,"dds":0.7201492537313433,"last_synced_commit":"d615b9d8ff1865c2e7678187f8bfae700eb07d55"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forefireAPI%2Ffirefront","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forefireAPI%2Ffirefront/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forefireAPI%2Ffirefront/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forefireAPI%2Ffirefront/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/forefireAPI","download_url":"https://codeload.github.com/forefireAPI/firefront/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226773972,"owners_count":17679866,"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":["cpp","python"],"created_at":"2024-08-08T05:01:20.744Z","updated_at":"2025-07-20T10:30:38.909Z","avatar_url":"https://github.com/forefireAPI.png","language":"C++","readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"./docs/source/_static/forefire.svg\" alt=\"ForeFire Logo\" width=\"400\"\u003e\n\u003c/p\u003e\n\n\n---\n[![linuxCI](https://github.com/forefireAPI/forefire/actions/workflows/main.yml/badge.svg)](https://github.com/forefireAPI/forefire/actions/workflows/main.yml)\n[![macOSCI](https://github.com/forefireAPI/forefire/actions/workflows/macos.yml/badge.svg)](https://github.com/forefireAPI/forefire/actions/workflows/macos.yml)\n[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)\n![Language](https://img.shields.io/badge/C++-00599C?logo=c%2B%2B\u0026logoColor=white)\n![Language](https://img.shields.io/badge/Python-3776AB?logo=python\u0026logoColor=white)\n[![Documentation Status](https://readthedocs.org/projects/forefire/badge/?version=latest)](https://forefire.readthedocs.io/en/latest/?badge=latest) \n[![DOI](https://img.shields.io/badge/DOI-10.14195/978--989--26--0884--6_29-blue)](https://www.researchgate.net/publication/278769168_ForeFire_open-source_code_for_wildland_fire_spread_models) \u003c!-- Or use Zenodo DOI if available --\u003e\n\n\n**ForeFire** is an open-source **wildfire simulation engine** written in C++. Developed by CNRS at the [Université de Corse Pascal Paoli](https://www.univ-corse.fr/), it is used for research and operational forecasting. The engine implements various fire behavior models and enables high-fidelity coupled fire-atmosphere simulations, aiming to improve wildfire prediction and understanding for complex environments.\n\n\n**Key Links:**\n- 📚 **Full Documentation:** [forefire.readthedocs.io](https://forefire.readthedocs.io/en/latest/)\n- 🚀 **Live Demo:** [forefire.univ-corse.fr/sim](http://forefire.univ-corse.fr/sim)\n- 🌍 **Website:** [forefire.univ-corse.fr](https://forefire.univ-corse.fr/)\n\n## Features\n\n*   **Advanced Simulation Engine:** Core C++ logic for fire propagation using various Rate of Spread (ROS) models and handling complex geospatial data (NetCDF).\n*   **Fire-Atmosphere Coupling:** Designed for two-way coupling by linking the core library with atmospheric models like [MesoNH](https://mesonh.aero.obs-mip.fr/mesonh/) (developed by CNRS \u0026 Météo-France).\n*   **High Performance:** Optimized C++ core with MPI support for parallel computing.\n*   **Flexible Interfaces:** Built upon a core **C++ Simulation Engine (Library)**:\n    *   **`forefire` Interpreter:** The primary way to run simulations using script files (`.ff`), interactive console commands, or the web interface (via `listenHTTP[]`).\n    *   **C++ Library (`libforefireL`):** Allows direct integration into other software.\n    *   **Python Bindings:** Enable scripting and control from Python (see [./bindings/python/README.md](./bindings/python/README.md)).\n*   **Flexible Output:** Can generate outputs in various formats, including KML for visualization in Google Earth, Geojson, NetCDF, and custom binary/text formats.\n*   **Extensible:** Add custom ROS models in C++; customize web interfaces.\n*   **Applications:** Research, case reanalysis, ensemble forecasting.\n\n\n## Quick Start with Docker\n\nThe easiest way to get started is often using Docker and the interactive console, via the **`forefire` command-line interpreter** \n\n![ForeFire Web UI showing a simulation example](docs/source/_static/images/gui_real_case_ff.jpg)\n\n1. Clone the repository\n    \n    ``` bash\n    # Clone the repository\n    git clone https://github.com/forefireAPI/forefire.git\n    cd forefire\n    ```\n\n2. Build the Docker image \n\n    ```bash\n    docker build . -t forefire:latest\n    ```\n\n3. Run the container interactively\n\n    ```bash\n    docker run -it --rm -p 8000:8000 --name ff_interactive forefire bash\n    ```\n4. Inside the container navigate to test directory and launch the forefire console:\n    ```bash\n    cd tests/runff\n\n    # start the forefire console with the command\n    forefire\n    ```\n\n5. Inside the console launch an http server with listenHttp[] command\n\n    ```bash\n    forefire\u003e listenHTTP[]\n\n    # the output should be\n    \u003e\u003e ForeFire HTTP command server listening at http://localhost:8000\n    ```\n\n    This server provides a graphical user interface that you can access on your browser at http://localhost:8000/\n\n6. Run your first simulation\n    - Run the command `include[real_case.ff]`\n    - Then press Refresh Map\n\n    You should see a simulation running in the Aullène region of Corsica. **This confirms your Docker setup is working!** Check the full documentation for more details on this example\n\n## Build from source\n\nSee the Full Documentation for more details on building from source with the `install-forefire.sh` file\n\n## Python Bindings\nForeFire provides Python bindings for easier scripting and integration. See the Python Bindings [./bindings/python/README.md](./bindings/python/README.md) for details.\n\n## Contributing\n\nWe welcome contributions to ForeFire! We especially appreciate help with:\n\n- Improving documentation and tutorials.\n- Python bindings\n- Enhancing packaging (Docker, Pip, etc.) and cross-platform compatibility.\n\n Please read our **[Contributing Guidelines](CONTRIBUTING.md)** to learn how you can help, including how to report bugs, suggest features, and submit code changes.\n\nAll contributors are expected to adhere to our **[Code of Conduct](CODE_OF_CONDUCT.md)**.\n\n\n## License\nForeFire is licensed under the GNU General Public License v3.0. See [LICENSE](./LICENSE) for full details.\n\n## Citation\nIf you use ForeFire in your work, please cite:\n\n**BibTex**\n```bibtex\n@article{article,\nauthor = {Filippi, Jean-Baptiste and Bosseur, Frédéric and Grandi, Damien},\nyear = {2014},\nmonth = {11},\npages = {},\ntitle = {ForeFire: open-source code for wildland fire spread models},\nisbn = {9789892608846},\ndoi = {10.14195/978-989-26-0884-6_29}\n}\n```\n\n**Plain Text**\n\u003e Filippi, Jean-Baptiste \u0026 Bosseur, Frédéric \u0026 Grandi, Damien. (2014). ForeFire: open-source code for wildland fire spread models. 10.14195/978-989-26-0884-6_29. ","funding_links":[],"categories":["Biosphere"],"sub_categories":["Wildfire"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FforefireAPI%2Fforefire","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FforefireAPI%2Fforefire","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FforefireAPI%2Fforefire/lists"}