Internet for All
Company: Agencia Digital de Innovación Pública
Role: Lead Frontend Developer
Stack: React, Django, Python, PostgreSQL
Internet para Todos
35,350 free WiFi hotspots. 1,270,550 people online at the same time. The largest public network in the world — and the map you find it with.

What it does
Open the map, find the nearest hotspot, connect. No sign-up, no account, no cost.
Mobile first on purpose: if you are looking for WiFi it is because you have no internet, so the first load has to fit in whatever data you have left.
::carousel images=[{"src": "/media/work-projects/images/internet-para-todos/ipt-mapa-satelite.webp", "alt": "Hotspots over satellite", "caption": "Every hotspot in the city"}, {"src": "/media/work-projects/images/internet-para-todos/ipt-mapa-claro.webp", "alt": "The light map", "caption": "Four map styles — whichever reads best"}, {"src": "/media/work-projects/images/internet-para-todos/ipt-mapa-zocalo.webp", "alt": "3D view over the Zócalo", "caption": "In three dimensions, street by street"}, {"src": "/media/work-projects/images/internet-para-todos/ipt-mapa-centro.webp", "alt": "The historic centre", "caption": "Downtown, hotspot by hotspot"}] height="460px"::
The city, borough by borough
Iztapalapa 8,542. Benito Juárez 6,312. Milpa Alta 561. Coverage at a glance — and where it is still missing.
::carousel images=[{"src": "/media/work-projects/images/internet-para-todos/ipt-alcaldias.webp", "alt": "Map by borough", "caption": "Pick a borough, see its coverage"}, {"src": "/media/work-projects/images/internet-para-todos/ipt-iztapalapa.webp", "alt": "Iztapalapa", "caption": "Iztapalapa: 8,542 hotspots"}, {"src": "/media/work-projects/images/internet-para-todos/ipt-benito-juarez.webp", "alt": "Benito Juárez", "caption": "Benito Juárez: 6,312 hotspots"}, {"src": "/media/work-projects/images/internet-para-todos/ipt-milpa-alta.webp", "alt": "Milpa Alta", "caption": "Milpa Alta: 561 hotspots"}] height="460px"::
Connecting takes four steps
And they live inside the map itself: someone who doesn't know how to connect won't go looking for the instructions on another page.
::carousel images=[{"src": "/media/work-projects/images/internet-para-todos/ipt-conectarse-1.webp", "alt": "Step 1", "caption": "Find the network"}, {"src": "/media/work-projects/images/internet-para-todos/ipt-conectarse-3.webp", "alt": "Step 3", "caption": "Open the notification"}, {"src": "/media/work-projects/images/internet-para-todos/ipt-conectarse-4.webp", "alt": "Step 4", "caption": "Browse"}] height="460px"::
What I built
::two-columns split="50-50"::
Mine
The whole frontend in React, the OpenStreetMap layer, the address catalogue and the cache that stops a request firing on every drag.
::column-break::
The team's
The APIs and the city's open data, which is what keeps all 35,350 hotspots current.
::/two-columns::
What the world said

Guinness World Record for the most connected city in the world, UN regional best practice, and first place at WSIS Forum 2023 among 776 projects worldwide.
Status
Shipped to production; I no longer maintain it. Of everything I built in government this is my favourite, for a silly reason: it is the only one used by people and not by civil servants.