Saltearse al contenido

Changelog

v0.0.7-alpha actual pre-release

8 de mayo de 2026

Facturacion fiscal

  • Lock de facturas al asentar: las facturas pasan a estado bloqueado (locked) automaticamente al asentarlas, evitando modificaciones accidentales. Solo admins pueden desbloquarlas.
  • Calculo de retenciones (IRPF): integrado en el flujo de facturas de venta y compra. Configurable por partner y tipo de documento. Se calcula automaticamente sobre la base imponible.
  • Estados de cobros/pagos: cada documento de venta/compra lleva un estado de pago que evoluciona automaticamente: pendingpartialpaid. El estado se recalcula al registrar cada pago o cobro.
  • Conciliacion automatica: el motor de conciliacion empareja pagos registrados con lineas de factura pendientes, marcando automaticamente el estado segun el importe conciliado.

Email por tenant (SMTP)

  • SMTP configurable por empresa: cada tenant define su propio servidor SMTP (host, puerto, usuario, password, TLS/STARTTLS) desde Ajustes > Email.
  • Cola de envio desatendida: los emails se encolan y se enviegan en segundo plano. Reintentos automaticos en caso de fallo temporal.
  • Preview antes de enviar: modal que muestra exactamente como quedara el email antes de enviarlo.
  • Envio masivo: seleccion multiple de documentos para envio por email en bloque.
  • Notificaciones in-app al completar: cuando un email termina de enviarse (o falla), aparece una notificacion in-app en tiempo real.

Modulo RRHH

  • Calendario de tareas: vista mensual y semanal de tareas asignadas a empleados. Visibilidad de carga de trabajo por departamento.
  • Shift patterns y templates: patrones de turnos configurables (manana, tarde, noche, personalizado) y plantillas para asignarlos rapidamente.
  • Commissions: registro y seguimiento de comisiones por empleado y periodo. Configurable como porcentaje o cantidad fija.
  • Evaluations: evaluaciones de rendimiento con metricas configurables, ratings y feedback.
  • Payrolls (nominas): generacion de nominas con conceptos salariales configurables (salario base, plus, deducciones, IRPF).
  • Payroll concepts: tabla de conceptos de nomina reutilizables (devengos, deducciones, retenciones).
  • Timeclock kiosk: modo terminal para que los empleados fichen entrada y salida directamente desde una pantalla dedicada.
  • Incidents e incident types: registro de incidencias laborales con tipologia configurable (retraso, ausencia, incidente).
  • Departments: estructura organizativa por departamentos.
  • Employees: gestion completa de empleados con datos personales, contrato y departamento.
  • Tasks: tareas asignables a empleados con fechas, prioridad y estado de realizacion.

Logistica

  • Logistics hub: panel centralizado con overview de todas las operaciones logisticas activas.
  • Shipments: gestion completa de envios. Estados: pending → picked → in_transit → delivered → returned.
  • Routes: planificacion y gestion de rutas de entrega con asignacion de vehiculos y conductores.
  • Driver app: aplicacion web para conductores con acceso movil: lista de entregas, estado de cada envio, incidencias.
  • Platforms: gestion de plataformas de carga/descarga con ubicacion y capacidad.
  • Vehicles: catalogo de vehiculos con matricula, tipo, capacidad y estado.
  • Staging areas: areas de staging para organizacion fisica de preparados.
  • Packages: gestion de bultos y paquetes dentro de un envio.
  • Preparation tab: interfaz de preparacion de pedidos para operadores de almacen.
  • Picking tasks panel: panel de tareas de picking con asignacion y seguimiento.
  • Incidents tab: registro de incidencias en ruta (averias, retrasos, reclamaciones).

Editor visual de plantillas PDF

  • Diseñador drag & drop: editor visual de plantillas de documento basado en canvas. Arrastra elementos para colocarlos, redimensiona y reposiciona con el raton.
  • Elementos disponibles: texto, imagen, codigo de barras (Code-128), QR por pagina, tablas de lineas, lineas divisorias.
  • Inspector editable: panel lateral para tipografia (fuente, tamano, color, peso), colores de fondo, posicion y tamano exactos.
  • Preview PDF en tiempo real: genera la vista previa del PDF directamente desde el diseñador al guardar.
  • Importar/exportar layout: exporta el layout del canvas como JSON para backup o versionado. Importa desde otro archivo JSON.
  • Importar desde otra plantilla: copia el diseno de una plantilla existente a una nueva.
  • Campos de plugins en el FieldPicker: los campos personalizados declarados por plugins aparecen disponibles en el selector de campos.
  • Chips de lotes/series: embebidos automaticamente en documentos donde se requiera trazabilidad.
  • QR + Code-128 por pagina: generacion automatica de codigos de verificacion en cada pagina.
  • Marca de agua PAGADA: en facturas rectificativas ya pagadas se aplica automaticamente una marca de agua de estado “PAGADA”.
  • Paleta de marca Keirost: el editor viene precargado con los colores de la identidad visual de Keirost.

SEO y presencia web

  • OG image 1200x630: imagen optimizada para comparticion en redes sociales y apps de mensajeria.
  • Meta tags completos: title, description y keywords para SEO organico.
  • Open Graph: etiquetas OG para riqueza de previsualizacion en Facebook, LinkedIn, WhatsApp, Twitter.
  • JSON-LD structured data: schema.org para mejor indexacion por motores de busqueda.
  • robots.txt y sitemap.xml: configuracion de rastreo e indice para bots.
  • Iconos PNG: favicon en multiples tamanos (16, 32, 192, 512) para todos los contextos (browser, PWA, apple-touch).
  • Scrollbar con color de marca: scrollbar personalizado en color teal, soporte Firefox con estilo nativo.

UX y polish

  • Tablas ordenables: todas las listas incorporan ordenacion por columna (asc/desc) sin recargar la pagina.
  • Animaciones de entrada: row-in (fila entra desde la izquierda), card-in (tarjeta escala desde 0.95), pulse-dot (indicador pulsante en elementos activos).
  • ~180 arreglos de modo oscuro: eliminadas clases dark: duplicadas, corregidos hover mal-paireados, fixed transparencias en modales y dropdowns.
  • Sidebar compacta con iconos lucide: 60px de ancho, iconos de la coleccion lucide-react, hover scale + color transition.
  • Topbar de sub-tabs: barra superior con tabs de subseccion del modulo activo.
  • Tablas compactas con multi-select: checkbox tristate en todas las tablas, bulk actions bar al seleccionar.
  • Dashboard con charts (recharts): grafica de linea (ventas vs compras 12 meses), donut (facturas por estado), barras (top clientes/proveedores).
  • Bulk actions: barras de acciones masivas que aparecen al seleccionar filas: enviar, exportar, anular.
  • Modal con backdrop blur: depth visual en todos los modales con backdrop-filter blur + opacidad.
  • i18n preparada: estructura de internacionalizacion ES/EN en su lugar; traduccion completa al ingles en proceso para la siguiente release.

v0.0.6-alpha pre-release

18 de abril de 2026

Rediseño de UI

  • Sidebar minimal de 60px con iconos lucide para los 7 módulos top-level (Inicio, Inventario, Ventas, Compras, Interlocutores, Contabilidad, Plugins, Ajustes)
  • Topbar con sub-tabs del módulo activo
  • Avatar de usuario y selector de empresa al pie del sidebar como popovers
  • Tablas a ancho completo (sin el padding excesivo anterior)
  • Hover scale 1.1 + cambio de color (200ms) en los iconos del sidebar

Tablas compactas

  • Densidad compact por defecto en @openfactu/ui Table, con prop density opcional (compact | normal | comfy)
  • Multi-select con checkbox tristate (selectable, selectedKeys, onSelectionChange)
  • Nuevo componente <BulkActionsBar> que aparece encima de la tabla cuando hay filas seleccionadas
  • Fix de dark mode striping (filas no se ven lavadas)
  • thead y SearchableSelect dropdown sin transparencia (no se ven a través de modales)
  • Modal con backdrop opaco al 90% + blur, constraint de altura max-h-90vh y scroll interno

Dashboard con gráficos (recharts)

  • Línea: tendencia mensual de Ventas vs Compras (12 meses)
  • Donut: distribución de facturas por estado (Abiertas / Cerradas / Parcial / Anuladas)
  • Barras horizontales: Top 5 clientes y Top 5 proveedores por volumen
  • KPIs y secciones de stock se mantienen
  • Todos los charts respetan el modo dark/light

Plugin SDK extendido (@openfactu/plugin-sdk v0.1.0)

  • Nuevos tipos PluginModule y PluginSubTab en PluginManifest.ui
  • Plugins pueden registrar módulos top-level propios (icono nuevo en el sidebar)
  • Plugins pueden inyectar sub-tabs en módulos core
  • Nuevo ListFetchContext<T> y eventos <entity>.list.afterFetch para inyectar/mutar filas en listados core (items, partners)
  • Backwards compatible: menuItems legacy se mapean automáticamente al módulo “Plugins”

Bug fixes (~180 instancias)

  • Eliminadas todas las clases dark: duplicadas (dark:text-X dark:text-Y) que dejaban texto lavado en oscuro
  • Reparados patrones hover:bg-X dark:bg-Y mal-paireados (ahora dark:hover:bg-Y)
  • TenantSwitcher adaptado a tema light/dark
  • Card header sólido (sin opacity 30 en dark)
  • PermToggle con ring + dot adaptados a dark mode

v0.0.5-alpha pre-release

17 de abril de 2026

Sandbox de desarrollo de plugins

  • Hot reload: edita un plugin y se recarga automaticamente sin reiniciar el servidor
  • File watcher con chokidar para deteccion de cambios
  • WebSocket /ws/plugins para notificar al frontend en tiempo real
  • Componentes UI se actualizan en el browser sin refrescar la pagina
  • HookManager.unregisterPlugin() para evitar duplicacion de hooks al recargar

Desarrollo remoto de plugins

  • Dev API Keys: genera credenciales (clientId/clientSecret) desde la UI del ERP
  • POST /api/plugins/upload — sube un plugin como ZIP
  • POST /api/plugins/:id/push — sync incremental de archivos
  • Autenticacion por dev key o JWT de admin
  • Pantalla de gestion de API Keys en Plugins > Desarrollo

CLI: nuevos comandos de plugins

  • openfactu plugin search — buscador interactivo con autocomplete
  • openfactu plugin install/update/remove — gestion completa
  • openfactu plugin push — sube plugin a servidor remoto
  • openfactu plugin watch — auto-sync al guardar (desarrollo remoto)
  • openfactu plugin link/unlink — symlinks para desarrollo local
  • openfactu plugin dev — servidor en modo desarrollo con logs filtrados

CLI: comandos de Docker

  • openfactu rebuild — reconstruye y reinicia contenedores
  • openfactu logs — muestra logs de los servicios
  • openfactu stop / openfactu restart — control de servicios

Fixes de Docker

  • Dockerfiles compilar paquetes compartidos (@openfactu/pdf, common, ui) antes del server/web
  • Crear tablas del schema publico automaticamente al arrancar
  • .dockerignore para evitar copiar storage/db_data

SDK (@openfactu/plugin-sdk v0.0.3)

  • Tipos completos: PluginContext, HookContext, PluginManifest, CoreTableName
  • Hooks tipados: DocumentType, HookEvent, HookHandler
  • Documentacion actualizada con ejemplos

v0.0.4-alpha

16 de abril de 2026

Primera version funcional completa de Keirost.

CLI (@openfactu/cli)

  • openfactu install — Descarga e instala desde releases de GitHub, con soporte Docker (Windows/Mac/Linux)
  • openfactu deploy — Wizard para configurar acceso externo (LAN / dominio publico / SSL)
  • openfactu deploy:status — Estado de contenedores Docker
  • openfactu update — Actualiza a la ultima version sin perder datos (plugins, storage, .env)
  • openfactu setup — Configuracion inicial interactiva (BD, admin, primer tenant)
  • openfactu migrate / migrate:status — Gestion de migraciones de base de datos por tenant
  • openfactu tenant list/create/sync — Gestion de empresas
  • openfactu plugin list — Estado de plugins por empresa
  • Soporte sudo para instalar en cualquier directorio del sistema
  • Funciona desde cualquier ruta con --path o OPENFACTU_HOME

Plugins por empresa

  • Activar/desactivar plugins por tenant desde la UI o API
  • Nueva tabla TenantPlugin con cache en memoria para rendimiento
  • HookManager filtra hooks segun la activacion del plugin en el tenant
  • Pantalla de gestion de plugins en el frontend con toggles

FactuAPI

  • FactuApi.transaction() — Operaciones atomicas (todo o nada)
  • IDs pre-asignados antes de save() para referencias cruzadas entre documentos
  • FactuApi.session() — Login + seleccion de tenant + conexion a BD en una sola llamada
  • Helpers de consulta: getPartner(), getItem(), getSeries(), getOpenPeriods()
  • FactuApi.connect() — Acceso a la BD del tenant sin transaccion

Docker

  • Fix del build de la web (TypeScript deprecations, type imports con verbatimModuleSyntax)
  • VITE_API_URL como build arg en el Dockerfile de la web
  • Eliminado atributo version deprecado de docker-compose
  • docker-compose.prod.yml generado por el CLI con binding a 0.0.0.0

ERP Core

  • Multi-empresa con esquemas PostgreSQL aislados
  • Facturacion completa: pedidos, albaranes y facturas (venta y compra)
  • Inventario: almacenes, zonas, lotes, series, stock por ubicacion
  • Socios de negocio: clientes, proveedores, grupos, direcciones multiples
  • Impuestos configurables (IVA 0%, 4%, 10%, 21%)
  • Series de numeracion por tipo de documento y periodo
  • Plantillas PDF personalizables con HTML/Handlebars
  • Dashboard con metricas de ventas, compras, stock y documentos recientes
  • Busqueda global en todas las entidades
  • Audit log completo (CREATE/UPDATE/DELETE con valores anterior y nuevo)
  • Sistema de permisos granulares por usuario y tenant
  • Datos geograficos: paises, regiones, provincias, municipios
  • Dark mode completo en la interfaz web

v0.0.3-alpha

16 de abril de 2026

Cambios

  • Primera version del CLI publicada en npm (@openfactu/cli)
  • Comando install con seleccion de releases de GitHub
  • Comando deploy para configurar acceso externo
  • Correcciones menores

v0.0.2-alpha

16 de abril de 2026

Cambios

  • Primera release publica de Keirost
  • ERP funcional con facturacion, inventario y multi-empresa
  • Interfaz web con React 19 y Tailwind CSS
  • API REST completa
  • Sistema de plugins
  • Docker Compose para despliegue

Proximas versiones

Funcionalidades planificadas para futuras versiones:

  • Traduccion completa al ingles de la interfaz
  • OCR para escaneo de facturas
  • Contabilidad integrada (libros de diario, mayor, balances)
  • Reportes y graficos avanzados
  • Marketplace de plugins
  • Soporte multi-idioma en la interfaz
  • SII/AEAT y TicketBAI
  • Exportacion a formatos standar (FACTURA-E, EDI)