);
}
/* ====================================================================== */
/* Shared bits */
/* ====================================================================== */
function SectionHead({ eyebrow, icon, title, lead, center, mod }) {
return (
{eyebrow && {icon && }{eyebrow}}
{title}
{lead &&
{lead}
}
);
}
function ProjectCard({ p, go }) {
return (
go('proyectos')}>
{p.badge &&
{p.badge.dot && }{p.badge.text}}
{p.eyebrow}
{p.title}
{p.text}
Leer más
);
}
function Faq({ items }) {
// Independent open/close per item — opening or closing one never affects the
// others. Items are always rendered (no scroll-reveal) so none can vanish.
const [open, setOpen] = useState(() => new Set([0]));
const toggle = (i) => setOpen(prev => {
const next = new Set(prev);
next.has(i) ? next.delete(i) : next.add(i);
return next;
});
return (
);
}
const FAQ_ITEMS = [
{ q: '¿Qué es EcoEsperanza?', a: 'EcoEsperanza es una organización sin fines de lucro dedicada a la protección del medio ambiente y la sostenibilidad a través de la educación, el monitoreo climático y la acción comunitaria.' },
{ q: '¿Cómo puedo involucrarme?', a: 'Puedes participar en nuestros programas de educación ambiental, voluntariado y proyectos comunitarios para restaurar el entorno natural.' },
{ q: '¿Qué proyectos realizan?', a: 'Realizamos proyectos de monitoreo climático, educación ambiental y acciones comunitarias para promover ecosistemas sostenibles y la participación ciudadana.' },
{ q: '¿Cómo se financian?', a: 'Nos financiamos a través de donaciones, subvenciones y colaboraciones con otras organizaciones y empresas comprometidas con el medio ambiente.' },
{ q: '¿Dónde están ubicados?', a: 'Trabajamos en colaboración con grupos locales en distintas comunidades —con estaciones activas en Bogotá, São Paulo y Valencia— para maximizar nuestro impacto ambiental.' },
];
/* ====================================================================== */
/* Footer + CTA band */
/* ====================================================================== */
function CtaBand({ go }) {
return (
Cada dato cuenta. Cada acción suma. Súmate a EcoEsperanza.
);
}
function Footer({ go }) {
return (
);
}
/* ====================================================================== */
/* INICIO */
/* ====================================================================== */
function HomeView({ go }) {
const stats = [
{ ico: 'radio-tower', val: '7', lbl: 'Estaciones activas' },
{ ico: 'map-pin', val: '4', lbl: 'Ciudades en dos continentes' },
{ ico: 'calendar', val: '2017', lbl: 'Desde nuestro origen' },
{ ico: 'globe', val: '24/7', lbl: 'Datos abiertos en tiempo real' },
];
const projects = [
{ eyebrow: 'Monitoreo', title: 'Red de Estaciones Climáticas Comunitarias', img: img('soilSeedling', 640, 400),
text: 'Sensores que miden clima y calidad del aire y publican en abierto en OpenSenseMap.',
badge: { tone: 'success', dot: true, text: 'Activa' } },
{ eyebrow: 'Biodiversidad', title: 'Observatorio de Biodiversidad Urbana', img: img('birds', 640, 400),
text: 'Registro de flora y fauna con iNaturalist para mapear la vida de cada barrio.',
badge: { tone: 'data', text: 'iNaturalist' } },
{ eyebrow: 'Comunidad', title: 'Educación y Acción Comunitaria', img: img('treePlanting', 640, 400),
text: 'Talleres, huertos urbanos, reciclaje y jornadas de reforestación con vecinos.',
badge: { tone: 'sun', text: 'Talleres' } },
];
const gallery = ['greenSun', 'handsPlant', 'recycling', 'kidsNature', 'volunteers', 'turbines', 'leaves', 'riverForest'];
return (
{/* Hero */}
Conservación · Educación · Datos abiertos
Protegiendo el medio ambiente con tecnología y educación.
Una red de ciencia ciudadana que monitorea el clima y restaura
ecosistemas para construir un futuro sostenible.
{/* Stats */}
{stats.map((s, i) => (
{s.lbl}
{s.val}
))}
{/* Sobre nosotros */}
Sobre Nosotros
Ciencia y comunidad al servicio del planeta
EcoEsperanza nació en Colombia en octubre de 2017 como respuesta a la creciente
crisis medioambiental: deforestación, contaminación y pérdida de biodiversidad.
Creemos que la información ambiental debe ser libre, accesible y útil para
toda la sociedad. Por eso combinamos tecnología de bajo costo, datos abiertos y
participación ciudadana para proteger y restaurar los ecosistemas.
{/* Misión / Visión */}
Nuestra Misión
Proteger y restaurar el medio ambiente
En todo el mundo, mediante el uso de tecnología, datos abiertos y participación
ciudadana, promoviendo la educación ambiental y fomentando acciones comunitarias que
garanticen la sostenibilidad de los ecosistemas.
Nuestra Visión
Una referencia mundial en conservación
Conectar comunidades, ciencia y tecnología para mantener un presente resiliente y
responsable, y crear un futuro consciente y en armonía con la naturaleza.
{/* Proyectos preview */}
{projects.map((p, i) => )}
{/* Galería */}
{gallery.map((key, i) => )}
);
}
/* ====================================================================== */
/* PROYECTOS */
/* ====================================================================== */
function ProyectosView({ go }) {
const areas = [
{ ico: 'activity', title: 'Monitoreo Climático y Datos Abiertos',
text: 'Redes de sensores que miden temperatura, humedad, presión, calidad del aire y lluvia, publicadas en abierto en OpenSenseMap.' },
{ ico: 'graduation-cap', title: 'Educación Ambiental',
text: 'Talleres, charlas escolares, cursos en línea y guías didácticas para formar ciudadanía informada y comprometida.' },
{ ico: 'hand-heart', title: 'Acción Comunitaria Sostenible',
text: 'Reforestaciones, limpiezas de ríos y playas, huertos urbanos y restauración de humedales, co-diseñados con la comunidad.' },
];
return (
Proyectos estratégicos de monitoreo y acción ambiental
Tecnología, ciencia ciudadana y participación comunitaria en distintas ciudades del mundo.
Monitoreo
Red de Estaciones Climáticas Comunitarias
Recopilamos datos en tiempo real sobre clima y calidad del aire en zonas urbanas
vulnerables. La información se transmite a plataformas abiertas como OpenSenseMap.
Bogotá, Colombia — 2 estaciones tras lluvias extremas y altos niveles de PM2.5.
São Paulo, Brasil — 2 estaciones por olas de calor e inundaciones repentinas.
Valencia, España — 2 estaciones tras tormentas intensas y contaminación urbana.
Provincia de Buenos Aires, Argentina — 1 estación por contaminación urbana.
Biodiversidad
Observatorio de Biodiversidad Urbana
Promovemos el uso de iNaturalist para registrar especies de flora y fauna en las
zonas donde operamos, conectando los datos climáticos con la salud de los ecosistemas.
Documentar la biodiversidad local.
Identificar especies en riesgo o invasoras.
Concientizar sobre la riqueza natural del entorno.
{areas.map((a, i) => (
{a.title}
{a.text}
))}
);
}
/* ====================================================================== */
/* EDUCACIÓN */
/* ====================================================================== */
function EducacionView({ go }) {
const programs = [
{ ico: 'book-open', title: 'Talleres y charlas', text: 'Sesiones presenciales en escuelas, iglesias y comunidades sobre ecología y cambio climático.' },
{ ico: 'graduation-cap', title: 'Cursos en línea', text: 'Formación abierta sobre sostenibilidad, conservación y uso de herramientas de ciencia ciudadana.' },
{ ico: 'radio-tower', title: 'Tecnología para conservar', text: 'Aprende a usar sensores ambientales y aplicaciones como iNaturalist y OpenSenseMap.' },
{ ico: 'hand-heart', title: 'Voluntariado', text: 'Súmate a reforestaciones, huertos urbanos y jornadas de limpieza con tu comunidad.' },
];
return (
Educación ambiental para restaurar el entorno natural
No se puede proteger lo que no se conoce. Formamos ciudadanía capaz de comprender los
datos y actuar sobre ellos.
Nuestro enfoque
Aprender, comprender y actuar
Desarrollamos programas educativos para distintos públicos —estudiantes, comunidades
locales, iglesias y voluntariados— con talleres, charlas, cursos en línea y campañas
de sensibilización.
Los contenidos abarcan desde conceptos básicos de ecología y cambio climático hasta el
uso de herramientas tecnológicas para la conservación.
La información ambiental debe ser libre, accesible y útil para toda la sociedad.
Mostramos el índice de calidad del aire (AQI) en tiempo real de las ciudades donde
trabajamos, con datos de IQAir.
{kpis.map((k, i) => (
{k.lbl}
{k.val}
))}
Calidad del aire en vivo
Índice por ciudad (AQI US)
En vivo
{cities.map((c, i) => {
const band = aqiBand(c.aqi);
return (
{liveCount > 0
? <> {liveCount} ciudad{liveCount === 1 ? '' : 'es'} en directo desde IQAir>
: <> Mostrando valores de referencia · añade tu API key para datos en vivo>}Actualizado {timeAgo(updated)}