Qué hago
Soy cofundador y CTO de VoltX, un optimizador de Windows para gaming. Mi parte no es el cliente de escritorio: es todo lo que hay detrás. La web en React, el esquema de la base de datos y su sistema de permisos, los paneles internos desde los que se gestiona la plataforma, la infraestructura sobre Cloudflare Workers, la comunidad y la organización del trabajo.
Escribir el código es la mitad. La otra mitad es responder por él cuando algo se rompe en producción, y eso me ha enseñado más que ninguna asignatura.
Cómo trabajo
Dejo rutas trampa puestas en la web —/.env, /.git/config, volcados de base de datos— porque nadie llega ahí navegando. Mi sistema ya ha filtrado 21.011 ataques automáticos y mantiene 2.612 direcciones bloqueadas: 9.311 peticiones cortadas o desafiadas y otras 4.241 desviadas a un laberinto para que pierdan el tiempo. Los escaneos de .env, .git o phpinfo no encuentran nada, porque no existe.
Al documentarlos no me fié de las etiquetas que pone mi propio sistema: crucé las 1.141 direcciones IP que tenía baneadas entonces contra los 7.888 rangos oficiales de AWS y aparecieron 152 servidores de Amazon que mi etiquetado había pasado por alto. En esa misma revisión saqué tres bloqueos del recuento porque no eran ataques: dos eran el previsualizador de enlaces de Instagram y el otro, el escáner de seguridad oficial de Stripe.
Un informe que solo suma a tu favor no sirve para decidir nada. Prefiero un número más pequeño y verdadero.
Proyectos
abril 2026 – actualidad · Producto propio
Plataforma web de un optimizador de Windows para gaming con más de 7.000 usuarios. Web, esquema y permisos de la base de datos, paneles internos de gestión, infraestructura y sistema propio de detección de tráfico automatizado.
ReactSupabasePostgreSQLCloudflare Workers
voltx.world
septiembre 2026 · Producto propio · construido dirigiendo agentes de IA
Web que analiza un chat exportado de WhatsApp 100% en el navegador: nada se sube a ningún servidor. Parsea los formatos .txt y .zip (este último descomprimido en el navegador sin librerías), calcula las estadísticas y genera una tarjeta para compartir. Lo diseñé y construí dirigiendo un sistema propio de agentes de IA, con revisión y despliegue automatizados.
JavaScriptHTML y CSSCloudflare PagesIA · agentes
chataliza.pages.dev · Código (MIT)
sep 2025 – nov 2025 · unas 27.000 líneas
Panel de soporte con tres roles —administrador, staff y usuario—, sistema de tickets y registro de auditoría. Lo que más trabajo llevó fueron las reglas de seguridad: el registro de auditoría es de solo escritura y ni un administrador puede modificarlo ni borrarlo, y la comprobación del rol se hace contra el servidor, nunca contra lo que diga el navegador.
React 18FirebaseFirestore Rules
Código y documentación
jun 2026 · Encargo para cliente
Portal de clientes con ocho tablas y políticas RLS que aíslan los datos de cada cliente en la propia base de datos, no en el código de la aplicación. Resolví una recursión infinita entre políticas —la de «perfiles» consultaba «perfiles»— con una función SECURITY DEFINER que rompe el ciclo.
Next.js 16SupabasePostgreSQL RLS
Código y documentación
nov 2025 · Proyecto personal
Panel único para gestionar varios sitios a la vez: un agente en JavaScript se inyecta en cada sitio gestionado y recibe órdenes desde el panel a través de seis funciones serverless.
TypeScriptNetlify FunctionsFirebase
Código y documentación
sep 2025 · Ejercicio de algoritmia
Cifrador web con el algoritmo escrito desde cero, sin librerías de criptografía: alfabeto de 27 caracteres, flujo de clave y corrección del índice negativo al descifrar. La documentación explica también por qué este cifrado no protege nada real desde que Kasiski lo rompió en 1863.
React 19JavaScript
Código y documentación
sep 2025 – ene 2026 · Proyecto personal
Herramienta de escritorio que detecta cambios en los ficheros de un equipo comparando huellas SHA-256 entre exploraciones, y distingue lo añadido, lo borrado y lo modificado. Los ficheros se leen en bloques de 64 KB para trabajar con archivos grandes sin cargarlos enteros en memoria.
PythonTkinterSHA-256
Código y documentación
Todos mis proyectos publicados están en github.com/Santiago-off.