v0.7 · Comparar · Buscar · 3 idiomas

Datos de Eurostat,
en cada pantalla.

Un cliente móvil y de escritorio de código abierto para la API pública de Eurostat. Ocho módulos temáticos — economía, población, medio ambiente, comercio, transporte, turismo, social, ciencia — además de comparación entre países y búsqueda de indicadores, todo sobre una única base de código Kotlin Multiplatform.

Cliente de código abierto independiente de terceros. No está afiliado a Eurostat ni a la Comisión Europea.

Vista general de los ocho módulos de la app EU Stats
19
datasets de Eurostat
8
módulos temáticos
5
plataformas, una base de código
AGPL-3.0
licencia de código abierto
Qué hace

Datos europeos públicos, tratados como un producto de primera clase.

Interfaz editorial y discreta. Caché stale-while-revalidate. Llamadas API reales, sin mocks. Diseñado para ciudadanos, periodistas y estudiantes que quieren explorar estadísticas europeas sin depender de ningún proveedor concreto.

Datos de API pública real

Los ocho módulos muestran datos en vivo de la API oficial de difusión de Eurostat — 19 datasets en total. Sin mocks predefinidos; sin bases de datos de demostración.

Caché stale-while-revalidate

Caché SQLDelight con TTL de 12 horas. Los datos en caché se muestran al instante; la actualización de red ocurre en segundo plano con un banner discreto; el modo sin conexión nunca deja la pantalla en blanco.

Gráficas sobre Compose Canvas puro

Ocho tipos de gráfica — líneas, barras apiladas, pirámide, mapa de calor, barras divergentes, radar, small-multiples, multilínea destacado — dibujados sobre un Canvas de Compose sin dependencias de renderizado de terceros.

Habla tres idiomas

Inglés, polaco y ucraniano en cada pantalla — y el selector de Ajustes cambia toda la interfaz en tiempo de ejecución, sin reiniciar. Este mismo sitio se publica en nueve idiomas.

Maestro-detalle adaptable

En tablets y escritorio, cada una de las ocho pantallas cambia a un diseño de dos paneles — un panel de controles de 320 dp junto al contenido — mientras que los móviles mantienen el mismo orden a una sola columna.

Toca una gráfica, obtén el dato

Tocar cerca de cualquier punto de una gráfica de líneas abre una ficha de detalle con el país, el año, el valor formateado, la unidad y el código del dataset — incluso en modo Indexado-100 resuelve el valor absoluto real.

Novedad en v0.7

Compara entre fronteras. Busca en todo.

Las dos pantallas más nuevas convierten ocho módulos independientes en un único atlas estadístico conectado.

feature-compare

Compara 2–5 países en una sola gráfica

Elige uno de los ocho indicadores principales — población, PIB, emisiones, exportaciones, pasajeros aéreos, pernoctaciones turísticas, riesgo de pobreza, intensidad de I+D — y superpón hasta cinco países. Los colores se mantienen estables según el orden de selección, y el interruptor Absoluto / Indexado-100 reajusta cada serie a un punto de partida común: la forma honesta de comparar economías de tamaños distintos.

feature-search

27 indicadores, un solo cuadro de búsqueda

Un índice integrado con todos los indicadores de los ocho módulos — etiquetas, códigos de dataset, palabras clave — con clasificación por niveles. Escribe “pobreza”, “I+D” o “emisiones” y salta directamente a la pantalla correcta; una búsqueda vacía explora el catálogo módulo por módulo.

Ocho módulos

Abre una pestaña. Elige un país. Explora los años.

Cada módulo tiene su propio dataset, su selector y una gráfica característica adaptada a la forma de los datos. Las descripciones se toman directamente del README del proyecto.

Módulo Población — arrastra el control de año para transformar la pirámide

Población

demo_pjangroup · 18 cohortes · H/M/T

Una pirámide demográfica con 18 cohortes de edad (bandas quinquenales, de Y_LT5 a Y_GE85). El titular muestra la población total con la variación interanual. Un control segmentado de tres opciones (Total / Hombres / Mujeres) atenúa el lado opuesto de la pirámide al seleccionar un sexo. Un control deslizante recorre los años disponibles; una fila de chips de países cambia el país activo sin hacer nuevas peticiones.

gráfica de pirámide control de año segmentado H/M/T
Módulo Economía — PIB, inflación HICP y déficit

Economía

nama_10_gdp · prc_hicp_aind · gov_10dd_edpt1

Tres indicadores macroeconómicos — PIB a precios corrientes (miles de millones de EUR), índice de inflación HICP (2015 = 100) y capacidad/necesidad de financiación de las administraciones públicas en % del PIB — mostrados como gráfica de líneas multipaís. Un control segmentado selecciona la métrica activa; las dos métricas inactivas permanecen visibles como fichas de estadísticas secundarias atenuadas. Un control deslizante de doble manilla recorta el rango temporal de la gráfica; un menú desplegable independiente elige el año para el titular.

gráfica multilínea métrica segmentada control de doble manilla
Módulo Medio ambiente — GHG, energía, índice climático SDG

Medio ambiente

env_air_gge · nrg_bal_c · sdg_13_10

Tres datasets climáticos seleccionables mediante un menú desplegable: emisiones de gases de efecto invernadero en Mt CO₂-eq, consumo final de energía en ktoe y el índice climático SDG 13 con base 1990 = 100. Cuando están activos GHG o Energía, una fila de chips filtra por sector (TOTAL / TRANSPORTE / INDUSTRIA). La gráfica principal es una línea que compara el país activo con un país de referencia; dos fichas de estadísticas muestran las otras dos métricas para el mismo año.

menú de métrica chips de sector línea comparativa
Módulo Comercio — barras divergentes para exportaciones, importaciones, saldo

Comercio

ext_lt_intratrd

Flujos comerciales de bienes intra-UE — exportaciones, importaciones y saldo comercial en miles de millones de EUR. La gráfica principal es de barras divergentes que cubre los ocho años más recientes, con las exportaciones a la derecha y las importaciones a la izquierda. Tres pestañas subrayadas (Exportaciones / Importaciones / Saldo) destacan la dirección relevante. Dos fichas de estadísticas compactas muestran las cifras del país seleccionado para el año elegido.

barras divergentes pestañas subrayadas menú de año
Módulo Transporte — small multiples de pasajeros por carretera y aéreos

Transporte

road_pa_buscoa · avia_paoc

Volúmenes de pasajeros por carretera y aéreos presentados como gráficas de líneas small-multiple en paralelo. Los datos de carretera (miles de millones de pasajeros) y aéreos (millones de pasajeros) tienen escala independiente por panel. Un toggle en pastilla (CARRETERA / AIRE / TODO) controla qué paneles son visibles. Un interruptor de escala logarítmica comprime el eje para países con magnitudes muy distintas. Tres fichas de estadísticas resumen carretera, aire y una ficha "mar: n/d" que explica honestamente que el dataset basado en puertos queda excluido a propósito.

small multiples toggle en pastilla escala logarítmica
Módulo Turismo — barras apiladas de pernoctaciones y mapa de calor de estacionalidad

Turismo

tour_occ_ninat · tour_occ_nim

Pernoctaciones en alojamientos turísticos — nacionales, extranjeras y totales — representadas como gráfica de barras apiladas para los nueve años más recientes. Una fila de chips controla qué métrica guía el valor principal. Debajo de las barras apiladas, un mapa de calor de estacionalidad mensual (celdas = mes × año) muestra la distribución de pernoctaciones a lo largo del calendario.

barras apiladas fila de chips mapa de calor estacional
Módulo Social — las fichas KPI dirigen una gráfica de líneas destacada

Social

ilc_li02 · ilc_peps01n · hlth_silc_01

Tres indicadores de bienestar en porcentaje extraídos de las encuestas EU-SILC: tasa de riesgo de pobreza, tasa de riesgo de pobreza o exclusión social y proporción de población que declara una salud autopercibida muy buena. Los tres se representan juntos en una gráfica multilínea destacada; tocar una ficha KPI desplaza el énfasis a esa serie y actualiza el valor principal.

multilínea destacado selector de ficha KPI control de año
Módulo Ciencia — gráfica radar de I+D, uso de internet y educación terciaria

Ciencia

rd_e_gerdtot · isoc_ci_ifp_iu · edat_lfse_03

Tres indicadores de innovación — gasto en I&D como % del PIB, tasa de uso de internet y nivel de educación terciaria entre 25–64 años — mostrados simultáneamente en una gráfica radar. El radar superpone el país activo a un país de referencia (con preferencia por DE, luego FR, luego EU27). Tres sparklines muestran siempre la tendencia completa. No hay selector de métrica; el radar presenta los tres ejes a la vez.

gráfica radar superposición de referencia tres sparklines
Bajo el capó

Decisiones conservadoras y probadas — a propósito.

Clean Architecture distribuida en 20 módulos Gradle, respaldada por más de 600 tests unitarios — incluida una suite real en el simulador de iOS. Cada capa tiene un contrato sealed. Sin el operador !! en ningún sitio; sin gráficas de terceros; sin fugas de dispatcher.

Arquitectura

  • Clean Architecture multimodular — datadomainui
  • Contratos Result<T> · AppError · DispatcherProvider
  • Decompose para navegación, componentes y ciclo de vida
  • Koin para inyección de dependencias
  • Patrón de repositorio stale-while-revalidate

Datos

  • Ktor Client — engine Darwin en iOS, OkHttp en Android
  • kotlinx.serialization para JSON y blobs de caché
  • Esquemas SQLDelight con DAOs tipados y migraciones
  • Parser JSON-stat 2.0 escrito a mano en core-jsonstat
  • Coroutines + Flow + StateFlow en toda la app

Interfaz

  • Compose Multiplatform — Android, iOS, Desktop
  • Tokens de diseño object Euro — colores, tipografía, espaciado, formas
  • ~25 composables reutilizables en core-ui · Inter + IBM Plex Mono incluidas
  • Ocho tipos de gráfica sobre Canvas Compose puro — sin Koalaplot
  • AdaptiveTwoPane maestro-detalle · cambio de idioma en tiempo de ejecución
Tres factores de forma

Teléfono, tablet, escritorio — el mismo código Compose.

Un periodista en el escritorio, un estudiante en la tablet, un ciudadano en el móvil — los mismos datos, los mismos componentes, el mismo renderizado. A partir de 840 dp, cada pantalla cambia a un diseño maestro-detalle de dos paneles.

Módulo Economía ejecutándose en Android
Android móvil · tablet
Pirámide de población ejecutándose en iPhone
iPhone · iPad
La misma interfaz Compose · .dmg · .msi · .deb
Compose Desktop

Una única base de código Kotlin. Interfaz Compose Multiplatform. Ventanas nativas en cada plataforma.

Consigue la app

Descarga para tu plataforma.

Cada versión etiquetada la compila la CI — un APK universal de Android más instaladores nativos de escritorio, adjuntados automáticamente a la Release de GitHub.

Android

APK universal para Android 8.0+. Los metadatos de F-Droid ya están listos en el repositorio; el envío a la tienda está en el roadmap.

.apk F-Droid: previsto
Releases de GitHub

Escritorio

Instaladores nativos para macOS, Windows y Debian/Ubuntu. Actualmente sin firmar — tu sistema operativo pedirá confirmación en el primer arranque.

.dmg .msi .deb
Releases de GitHub

iOS

Se compila y ejecuta en el simulador de iPhone con datos reales de Eurostat. Compílala desde el código fuente con el proyecto XcodeGen; la distribución por TestFlight es un objetivo de financiación.

Xcode + XcodeGen TestFlight: previsto
Guía de compilación

Se está preparando la primera versión etiquetada — el flujo de CI activado por etiqueta (APK + los tres instaladores) ya está fusionado y verificado. Vigila el repositorio en GitHub para enterarte en cuanto esté disponible.

Roadmap

Transparentes sobre lo que está listo, lo que viene y lo que necesita financiación.

El proyecto está en la v0.7: todo el trabajo de producto de la Fase 5 — vista general, comparación, búsqueda, ajustes, localización — ya está publicado. La Fase 6 prepara la primera versión pública.

Disponible hoy

v0.7 · verificado
  • Ocho módulos temáticos conectados de extremo a extremo a datos reales de Eurostat
  • Panel de vista general · Comparación entre módulos · Búsqueda de indicadores
  • Ajustes con cambio de idioma en tiempo de ejecución · EN, PL, UK
  • Diseños maestro-detalle de dos paneles en las ocho pantallas
  • Caché stale-while-revalidate · el modo sin conexión sobrevive a un vuelo
  • Instaladores de escritorio generados por un flujo de CI activado por etiqueta
  • Más de 600 tests unitarios · incluida una suite real en el simulador de iOS

Próximo: primera versión pública

Fase 6 · en curso
  • Versión etiquetada v0.7.0 — APK + instaladores adjuntados por la CI
  • Clave de firma de release real para Android — en sustitución del fallback de depuración
  • Prueba de humo en un dispositivo Android físico · recorrido completo en iOS
  • Envío a F-Droid — los metadatos de fastlane ya están en el repositorio

Objetivos de financiación

Candidatura a NLnet en evaluación
  • Instaladores firmados y notarizados — certificados de Apple y Windows
  • Flatpak en Flathub · presencia en TestFlight / App Store
  • Selector de país tocando el mapa · gráficas de coropletas
  • Auditoría de accesibilidad — TalkBack y VoiceOver
  • Más idiomas de la UE en la interfaz de la app
Código abierto · interés público

Desarrollado de forma independiente. Publicado bajo AGPL-3.0.

Una candidatura al NLnet NGI Zero Commons Fund está en evaluación para financiar los próximos hitos. Ciudadanos, periodistas y estudiantes deberían poder explorar los datos públicos europeos sin depender de ningún proveedor concreto — en cualquier dispositivo que ya tengan.

Leer la roadmap