FireYak helps fire departments quickly find the nearest usable water source (e.g. fire hydrants, suction points, water tanks, fire water ponds, fire stations) based on OpenStreetMap data.
All water source data comes from the community-driven project OpenStreetMap.
If a hydrant or water source is missing or incorrect, you can improve it directly in OpenStreetMap (see below).
You can access FireYak through the web app or Android app:
- Web: https://app.fireyak.org
- Android: https://play.google.com/store/apps/details?id=at.jst.fireyak
- iOS: Use the web app https://app.fireyak.org
The web app is a Progressive Web App (PWA) and can be installed to the home screen on most modern browsers.
If you find FireYak useful, please consider supporting it:
You can also:
- Star the project on GitHub
- Report issues and improvement ideas
- Contribute code or documentation
- Displays nearby water sources using OpenStreetMap data:
emergency=fire_hydrantemergency=water_tankemergency=suction_pointemergency=fire_water_pondamenity=fire_station
- Different icons for hydrants, suction points, water tanks, ponds and fire stations.
- Map view and last position are restored on reopen.
- Dark mode support.
When you tap/click a marker, FireYak shows:
- Hydrant / water source type (pillar, underground, wall, pond, etc.)
- Pipe diameter, pressure, flow capacity / flow rate
- Couplings (type, diameters)
- Water source type (main, pond, stream, river, lake, tank, well, etc.)
- Capacity/volume where tagged
- Reference number, operator, name and address (if available)
- Access, notes, survey date, coordinates and OSM ID
You can:
- Open the object directly on openstreetmap.org.
- Open the object in the OSM editor to improve the data.
- Start navigation to the location (mobile & desktop).
- Share a link to the marker.
- Use your current location to list the nearest water sources (e.g. nearest hydrants).
- Distance display in meters/kilometres.
- Rough estimation of the required number of B-hoses based on configured hose length.
- Quick selection of a nearby source to see full details.
FireYak includes a relay pump / supply pipe calculator:
- Set:
- Fire object (target point)
- Suction point (water source)
- Optional waypoints (route via streets, terrain, etc.)
- Uses elevation data to estimate:
- Real (3D) hose distance along the route
- Elevation difference between suction and fire object
- Calculates:
- Approximate number of B-hoses required
- Number and positions of intermediate pumps
- For each pump and for the fire object:
- Distance from suction point
- Elevation gain
- Pressure at the pump / inlet
Configuration:
- Adjustable:
- Output pressure
- Minimum input pressure
- Pressure loss per meter (depending on flow rate)
If photos exist on Wikimedia Commons using the naming pattern
Fire-fighting-facility node-<OSM_ID>, FireYak can show them in a gallery for the selected marker.
- English
- German
FireYak only displays what is in OpenStreetMap.
If a hydrant or water source is missing or incorrect, you can fix it yourself in a few minutes.
Below is a basic guide using the standard iD editor on openstreetmap.org.
- Go to https://www.openstreetmap.org
- Click Sign Up (or Log In if you already have an account).
- Verify your email and sign in.
- Use the search or manually move the map to the location of the hydrant.
- Zoom in until you clearly see the street/building structure.
- Click the Edit button at the top.
- If asked, choose "Edit with iD (in-browser editor)".
- Wait until the editor has loaded.
- In the iD editor toolbar, choose Point (or the “+” to add a point).
- Click on the exact location of the hydrant on the map.
- In the left panel, search for "Fire Hydrant" or select it from the presets.
- The editor will set the primary tag:
emergency=fire_hydrant
To make the hydrant as useful as possible for FireYak and other emergency tools, please follow the official OpenStreetMap tagging guidelines instead of this README:
- General hydrant tagging:
https://wiki.openstreetmap.org/wiki/Tag:emergency%3Dfire_hydrant - Hydrant type and position keys (e.g.
fire_hydrant:type=*,fire_hydrant:position=*):
https://wiki.openstreetmap.org/wiki/Key:fire_hydrant:type
https://wiki.openstreetmap.org/wiki/Key:fire_hydrant:position - Additional hydrant-related keys (diameter, pressure, flow, couplings, etc.):
https://wiki.openstreetmap.org/wiki/Key:fire_hydrant:diameter
https://wiki.openstreetmap.org/wiki/Key:fire_hydrant:pressure
https://wiki.openstreetmap.org/wiki/Key:fire_hydrant:flow_capacity
For general water source tagging see:
water_source=*:
https://wiki.openstreetmap.org/wiki/Key:water_source
The iD editor provides fields for many of these; others can be added under All tags.
FireYak also uses the following objects from OpenStreetMap:
- Suction point – see
https://wiki.openstreetmap.org/wiki/Tag:emergency%3Dsuction_point - Water tank – see
https://wiki.openstreetmap.org/wiki/Tag:emergency%3Dwater_tank - Fire water pond – see
https://wiki.openstreetmap.org/wiki/Tag:emergency%3Dfire_water_pond - Fire station – see
https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dfire_station
For names, operators, access restrictions and capacities/volumes, please also refer to the relevant OSM wiki pages (e.g. name=*, operator=*, access=*, capacity=*, volume=*) for up‑to‑date recommendations.
- Click Save in the top right of the iD editor.
- Add a short changeset comment, e.g.
Added fire hydrant for local fire departmentorImproved hydrant data (diameter, pressure). - Click Upload.
Within a short time, FireYak will start using the updated data (depending on the Overpass API and cache).
- Frontend: Vue 3 + Ionic Vue
- Language: TypeScript
- State: Pinia
- Routing: vue-router
- Maps: Leaflet + marker clustering
- Storage: IndexedDB (via
idb) for caching map data - PWA: Vite +
vite-plugin-pwa - Mobile: Capacitor (Android)
# install dependencies
npm installnpm run devThen open the printed URL (typically http://localhost:5173) in your browser.
# build web app
npm run buildThe Android project lives in the android directory and can be built with Gradle/Android Studio as usual.
This project is released under the terms of the MIT License.
See the LICENSE file for details.
