Skip to content

Releases: gabimarti/analitix

Analitix 0.12.0

Analitix 0.12.0 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 09 Oct 07:29
Immutable release. Only release title and notes can be modified.
67239a8

Añadido

  • Registro de tensión arterial (menú Entrada manual → Tensión arterial...): sistólica, diastólica, pulso, fecha y hora, lugar (casa o consulta) y nota, para el paciente activo, con importación de CSV (plantilla propia y exportaciones de Omron Connect y Withings) que informa de cada línea con error y no duplica mediciones.
  • Paneles clínicos → Tensión arterial: media de la última semana de automedida en casa según el protocolo europeo (7 días, sin el primero; ESH 2021), con presión de pulso y pulso medio, su categoría informativa según la guía ESC 2024 para medidas en casa (solo si la semana cumple el protocolo; nunca de una lectura suelta), la última toma en la consulta y un gráfico de sistólica, diastólica y pulso con los umbrales de la guía. También como sección del informe PDF personalizado. Se puede elegir un intervalo de fechas para el gráfico y un periodo de comparación, con una tabla de medias (todo el histórico, intervalo y comparación) de sistólica, diastólica y pulso.
  • Informe PDF personalizado: opción «Gráficos» para poner uno por página en horizontal (como hasta ahora) o dos por página en vertical, para gastar menos hojas. En vertical, los gráficos van a todo el ancho y sin deformarse, y el resumen de cada panel y de la tensión arterial va en la misma página, justo encima de sus gráficos.
  • Informes PDF: menos espacio entre el título y el texto en las páginas de resumen.
  • Ventana de progreso al generar cualquier informe PDF (barra, paso en curso y cursor de espera), para que no parezca que la aplicación se ha colgado mientras tarda unos segundos. El informe personalizado pide ahora el nombre del fichero antes de prepararlo.
  • Informe PDF personalizado: periodo de la tensión arterial («desde» y «hasta»), por defecto el último año hasta hoy.
  • Panel de tensión arterial: botones de periodo (últimos 10 días, último mes, últimos 3 meses, último año, todo o intervalo de fechas) y gráfico que se adapta a la duración: cada medición hasta un mes (con la línea mínimo-máximo del día si hay varias), por semanas hasta 6 meses y por meses a partir de ahí, con la línea mínimo-máximo y la media de cada periodo.
  • Guía «¿Cómo medirla?» en la pantalla de tensión arterial (y en el manual): cuántas mediciones, cuándo y en qué condiciones, según la guía europea ESH 2021.
  • «Cambio lento» en los gráficos de evolución (detector de deriva): si los últimos valores se separan poco a poco del valor habitual propio, de forma sostenida aunque ningún cambio entre dos analíticas sea grande, el texto bajo el gráfico lo indica (método CUSUM con la variación biológica publicada; solo dentro de un mismo laboratorio).
  • Configuración → Entrada manual: límites ajustables (mínimo y máximo) para validar la sistólica, la diastólica y el pulso; por defecto 80-250, 45-140 y 45-225, ajustables dentro de 50-300, 20-200 y 20-250.
  • Objetivo indicado por tu médico (Evolución → «🎯 Objetivo indicado por mi médico...»): si tu médico te ha fijado un objetivo concreto para una prueba (por ejemplo, LDL por debajo de 100 mg/dL), puedes anotarlo a mano y los gráficos de esa prueba lo muestran en lugar del rango del laboratorio, con la etiqueta «Objetivo indicado por su médico». Analitix nunca propone ni calcula objetivos.
  • Tiempo dentro del rango (u objetivo del médico) bajo cada gráfico de evolución: el % del tiempo, interpolando entre analíticas (método de Rosendaal, estándar en anticoagulación), sin contar periodos de más de un año sin analíticas.
  • Para el filtrado glomerular, aviso de la guía KDIGO si baja de forma demostrable más de 5 mL/min/1,73 m² al año («progresión rápida»: coméntalo con tu médico).
  • Resumen → «Posición en el rango»: cada parámetro del último informe sobre la franja de su rango, con el valor anterior y una palabra que lo resume («ligeramente alto», «muy bajo»…), para comparar de un vistazo parámetros de escalas distintas.

Cambiado

  • Los informes PDF indican con qué versión de Analitix se generaron: la portada muestra la versión, su fecha y la dirección del proyecto en GitHub, y el pie de cada página, la versión y «Página n de N» (antes solo «Página n»).
  • Menú nuevo «Entrada manual» con «Analíticas...» y «Tensión arterial...» (antes, Pacientes → Entrada manual). Las dos pantallas avisan de que los gráficos e informes dependen de lo que se introduce, y los campos solo admiten caracteres válidos y longitudes razonables.
  • La tendencia se calcula con un método robusto (pendiente de Theil-Sen) que un valor raro no arrastra, con su margen de confianza del 95 %: si no permite afirmar que el valor cambie dice «sin tendencia demostrable», y con menos de 5 analíticas o 2 años, «pocos datos para confirmarla» (antes bastaban 3 analíticas). La columna «Tendencia» del Resumen usa el mismo criterio.
  • El color intenso queda para las desviaciones grandes: un valor fuera de rango por poco se dibuja con el mismo color, más claro. Los colores aptos para daltonismo y los símbolos ▲/▼ no cambian.
  • Los rangos con un solo límite (por ejemplo LDL «< 130») ya dibujan su línea en los gráficos de evolución; antes no se veía ninguna.

Analitix 0.11.0

Analitix 0.11.0 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 06 Oct 17:59
Immutable release. Only release title and notes can be modified.
4eab124

Cambiado

  • Todas las páginas de los informes PDF son A4: los gráficos se adaptan a hoja vertical u horizontal y aprovechan todo el ancho para imprimirlos, sin textos cortados por los bordes. La portada indica «Último informe de laboratorio».
  • En las tablas de los informes PDF, la columna del parámetro es más ancha y su nombre ya no se corta.
  • El mapa de calor con muchas analíticas muestra el valor de los extremos de cada parámetro (el más alto por encima del rango y el más bajo por debajo), con un color de texto que contrasta con la casilla.
  • Colores aptos para daltonismo: los valores altos se muestran en rojo anaranjado y los bajos en azul (antes rojo y naranja, difíciles de distinguir), y el color ya nunca va solo: ▲/▼ junto al valor fuera de rango en Evolución y en el estado de la pestaña Resumen y de los informes PDF (que ya no usa emojis de colores); en «Qué ha cambiado», ✗ para lo que se aleja del rango y ✓ para lo que se acerca. El cambio brusco pasa de azul a granate.
  • Para marcar varias filas ya no hace falta Ctrl/Shift: Comparativa muestra casillas (con «Desmarcar todo») y las tablas de Pacientes, Normalizar pruebas e Informes huérfanos tienen una casilla ☐/☑ por fila que se marca o desmarca con un clic.
  • La columna de la izquierda (lista y botones) mide lo mismo y queda alineada a la izquierda en Evolución, Comparativa y todos los paneles clínicos: antes, en Comparativa y en los paneles la lista quedaba centrada y los botones salían más anchos.
  • Los botones de un mismo grupo tienen el mismo ancho en todas las pantallas (Importar, Pacientes, Exportar, Normalizar pruebas, Configuración) y en el pie de los cuadros de diálogo.

Añadido

  • En los gráficos de evolución (también Comparativa, paneles clínicos y PDF), el último valor se destaca con un anillo y la etiqueta «Último: valor», para ver de un vistazo el estado actual.
  • Los gráficos de evolución, Comparativa y los paneles clínicos muestran por defecto los 5 años anteriores a la última analítica, con un aviso si quedan analíticas ocultas; el interruptor «Ver todo el histórico» (en Evolución y en el menú Análisis) muestra el histórico entero y se recuerda. Los informes PDF completo y de alterados siguen incluyendo todo el histórico.
  • Informe PDF personalizado (Exportar → «Informe PDF personalizado...»): eliges qué incluir —tabla del último informe, «Qué ha cambiado», mapa de calor, la evolución de los parámetros que quieras y los paneles clínicos con su resumen y gráficos—, con ⚠ en lo que alguna vez ha estado alterado.
  • «Acerca de» muestra el correo de contacto del proyecto (contact@analitix.slmail.me).
  • Rango personal opcional en el gráfico de Evolución (interruptor «Mostrar mi rango personal»): tu propio rango «normal», calculado con tus analíticas anteriores dentro de rango y la variación biológica publicada (método de Coşkun 2021).

Analitix 0.10.0

Analitix 0.10.0 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 01 Oct 19:11
Immutable release. Only release title and notes can be modified.

Cambiado

  • Todos los cuadros de diálogo siguen el mismo diseño: fondo del tema (antes, algunos mostraban textos con fondo distinto al de la ventana), botones al pie a la derecha, centrados sobre la ventana principal y Escape para cerrar. Directrices en docs/GUIA_DIALOGOS.md.
  • Todos los gráficos de evolución (Evolución, Comparativa, paneles clínicos e informe PDF) aplican el mínimo de analíticas de Configuración: por debajo muestran un aviso y con una sola analítica no se dibuja el gráfico, solo el valor. Antes ese mínimo solo agrupaba la lista de Evolución y podían aparecer gráficos de un único punto.
  • El registro analitix.log ya no guarda el nombre de los PDF con aviso o error (suele ser el del paciente), sino el inicio de su huella MD5.

Añadido

  • Índice TyG (triglicéridos-glucosa) en el panel de glucosa, solo como tendencia y sin umbral.
  • Banda de variación esperable (RCV) en el último punto de los gráficos de Evolución y de los paneles.
  • Análisis → Laboratorios incluidos...: elegir de qué laboratorios salen los datos de gráficos, paneles clínicos, Resumen e informe PDF (por defecto, todos), para series más coherentes; el filtro activo se indica siempre en la barra inferior y en el PDF. La exportación Excel/CSV no se filtra.
  • Resumen en texto bajo cada gráfico de evolución (pantalla, paneles clínicos y PDF): en cuántas analíticas ha estado dentro del rango y cómo está la última respecto a su límite.
  • «Qué ha cambiado» indica si cada cambio es probablemente real o cabe en la variación esperable (valor de referencia del cambio, RCV), con variación biológica de estudios publicados citados; no se valora entre laboratorios distintos.
  • Menú Ayuda con enlaces al manual de usuario, la documentación técnica, las referencias científicas y el registro de cambios.
  • Política de seguridad (SECURITY.md) con el procedimiento para informar de vulnerabilidades de forma privada.
  • Cada Release incluye SHA256SUMS.txt y una atestación de procedencia del instalador para verificar la descarga (ver SECURITY.md).
  • Controles automáticos del repositorio: comprobación de datos personales y secretos en cada cambio, auditoría de vulnerabilidades de dependencias (pip-audit, también semanal) y actualizaciones con Dependabot.
  • Procedimiento de ramas: main contiene solo la última versión publicada y el desarrollo se hace en develop (ver CONTRIBUTING.md).

Analitix 0.9.0

Analitix 0.9.0 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 30 Sep 18:40

Primera versión pública.

Añadido

  • Importación automática de informes de laboratorio en PDF desde una carpeta elegible, con opción de incluir subcarpetas e importación incremental por huella del fichero.
  • Laboratorios y centros soportados mediante perfiles .toml externos: Consorci Sanitari del Maresme / Hospital de Mataró, Hospital Universitari Germans Trias i Pujol (HUGTIP), Synlab / SNB (Eurofins) Diagnósticos Globales, Quirón y Laboratorio Echevarne.
  • Los PDF de formato no reconocido quedan marcados para revisión manual: no se crea ningún paciente ni informe y no se adivina ningún resultado.
  • Gestión de pacientes: ficha editable (sexo, DNI, CIP, NHC y NHC secundario, tabaquismo), fusión de duplicados y eliminación.
  • Paciente activo único para toda la aplicación, elegido al iniciar en un diálogo que solo muestra el nombre.
  • Entrada manual de analíticas, con notas opcionales por informe.
  • Gráficos de evolución con banda de referencia, tendencia lineal con proyección, variación porcentual, tooltips y forma del punto según el laboratorio.
  • Comparativa de dos parámetros en paneles apilados con eje temporal compartido.
  • Resumen tipo semáforo del último informe, con columnas de variación y tendencia (%/año), y vista «Qué ha cambiado» con barras divergentes.
  • Mapa de calor del historial: parámetros frente a analíticas, coloreado según la posición dentro del rango de referencia.
  • Paneles clínicos informativos con la fuente citada: riesgo cardiovascular, salud hepática (De Ritis, APRI, FIB-4), función renal (KDIGO, urea/creatinina, deterioro agudo), hemograma (NLR, PLR, LMR, Mentzer, aviso de linfocitosis sostenida), metabolismo del hierro, inflamación (PCR + VSG), ácido úrico, calcio corregido, glucosa media estimada (eAG) y tiroides.
  • Fichas descriptivas de cada parámetro e índice, en lenguaje llano y con detalle técnico.
  • Normalización de pruebas entre laboratorios y plantillas mediante alias, con detalle por laboratorio, salvaguardas que bloquean o avisan de fusiones dudosas y herramienta de auditoría de alias.
  • Exportación a Excel y CSV, e informes PDF de seguimiento (completo o solo parámetros alterados) con portada y gráficos.
  • Explorador de la base de datos en modo solo lectura y detección de informes huérfanos.
  • Instalador para Windows que no necesita Python, con carpeta de datos elegible (también desde Configuración) y autocomprobación --self-test.
  • Comprobación opcional de versiones nuevas en GitHub (menú Ayuda o al iniciar).
  • Aviso legal de uso personal y no médico, que hay que aceptar en cada arranque, y documento DISCLAIMER.md.

Seguridad

  • Base de datos SQLite cifrada con SQLCipher mediante una contraseña maestra, que se puede cambiar sin perder datos.
  • Todo el procesamiento es local. La única conexión a internet es la comprobación opcional de versiones, que solo consulta el número de la última versión publicada.
  • Los registros de actividad no contienen datos de pacientes ni resultados.
  • Se neutralizan las fórmulas en las exportaciones a Excel y CSV.
  • Se rechazan las contraseñas con un formato reservado por el motor de cifrado.