MKT Studio
Un portal para clientes donde briefs, archivos originales, versiones y aprobaciones de trabajo creativo quedan en un solo historial verificable.
- Rol
- Líder de producto y desarrollo full-stack
- Año
- 2026
- Stack
- TypeScript, Cloudflare Workers, Cloudflare D1, Cloudflare R2 (private), Supabase Auth (MFA), Vite, Vitest, Miniflare, Python ops tooling

El problema
Las aprobaciones creativas pasaban por chats y carpetas compartidas: el cliente aprobaba un archivo y descargaba otro, los ajustes sobrescribían versiones ya revisadas y no quedaba registro de quién aprobó qué.
Lo que construí
Un solo portal para el equipo y los clientes. El cliente envía el brief y los originales y confirma explícitamente la entrega; el equipo guarda aparte sus notas privadas de producción; cada versión se publica para revisión, donde el cliente puede marcar un punto en la pieza, pedir cambios o aprobar. La aprobación registra versión, entrega y SHA-256, y solo los bytes exactos aprobados quedan disponibles para descargar.
Destacados
- Historial de revisión inmutable: los ajustes crean versiones nuevas y nunca reemplazan bytes revisados; la aprobación queda ligada a un hash SHA-256, y la vista previa y la descarga sirven el mismo archivo.
- Autorización en el servidor por cliente y proyecto en D1, Supabase solo para identidad con MFA obligatorio para administradores, cookies de sesión opacas HttpOnly y verificación de origen y CSRF en cada cambio.
- Archivo histórico importado con trazabilidad: 11 proyectos de 8 marcas, 165 versiones y 3.002 registros de piezas, con 1.817 binarios nuevos deduplicados y ningún error de lectura.
