Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Miguelcds/App_AsignadorZonasBilbao/llms.txt

Use this file to discover all available pages before exploring further.

The app maps Bilbao street names to one of 20 geographic zones. Each zone corresponds to a neighborhood or sub-area of Bilbao, used for delivery routing and administrative assignments.

All zones

#Zone name
1Deusto
2Deusto Muelle
3Deusto Monte
4San Ignacio
5Matiko
6Matiko Alto
7Bilbao Centro
8Bilbao-Basurtu
9Bilbao Muelle
10Kasko Viejo
11Santutxu
12Santutxu Alto
13San Francisco
14Miribilla
15Zamakola
16Zorroza
17Zurbaranbarri
18Rekalde
19Txurdinaga
20Txurdinaga - Alto

How zone matching works

The app normalizes each street value to uppercase and then checks whether the value includes any dictionary key using JavaScript’s .includes() method.
function asignarZona(calle) {
    if (!calle) return '';
    const upper = calle.toString().toUpperCase().trim();
    for (const [clave, zona] of Object.entries(getDictionary())) {
        if (upper.includes(clave.toUpperCase())) return zona;
    }
    return '';
}
This means a key like "IPARRAGUIRRE" will match a full street value like "Calle Iparraguirre 6" — partial substring matching is intentional. Short or generic keys can therefore match unintended streets, so key specificity matters when editing the dictionary.

Special cases

One entry in the standard dictionary is marked as pending verification:
Street keyAssigned value
AV LEHENDAKARI AGUIRDeusto o San Ignacio *Verificacion pdnt*
This street runs along the boundary between Deusto and San Ignacio. The assignment has not been confirmed. Rows matched by this key will carry the *Verificacion pdnt* flag in the Zona column of the exported file.
Do not treat Deusto o San Ignacio *Verificacion pdnt* as a valid zone for routing. Review these rows manually before use.

Custom zones

You can define your own zone names — they are not limited to the 20 standard zones listed above. To add a street with a custom zone:
  1. Open the Nueva Calle tab.
  2. In the zone dropdown, select ✏ Zona personalizada…
  3. Type the new zone name in the text field that appears.
  4. Click Guardar Calle to save.
Custom entries are stored in localStorage under the key 'zonasCustom_v1' and take priority over the standard dictionary.
The app uses first-match wins. The combined dictionary is built by merging zonasEstandar (the standard dictionary from js/data.js) with customStreets (entries from localStorage):
function getDictionary() {
    return { ...zonasEstandar, ...customStreets };
}
Custom entries are spread last, so they override any matching key in the standard dictionary. Within each dictionary, iteration follows JavaScript object insertion order. The first key whose value is a substring of the street name wins — no further keys are checked.If you need a street to resolve to a different zone, add a custom entry for that street key. Because custom entries are merged last, they take precedence over the standard dictionary.

Build docs developers (and LLMs) love