Proyecto personal, hecho en solitario · mayo de 2026 – actualidad
Teniendo una afinidad con el colectivo de música Form:at, para salir del monopolio de las plataformas más usadas y de pago como SoundCloud, YouTube, Mixcloud etc, decidimos que sería una idea genial tener un reproductor propio, a partir de ahí le fui añadiendo funcionalidades que en el resto de plataformas son de pago, y en esa es gratis.
- Guarda sesiones de 90 minutos (100–220 MB cada una) para escucharlas sin cobertura: IndexedDB con una comprobación previa del espacio, un service worker que atiende peticiones Range para avanzar y retroceder, y reproducción desde la pantalla de bloqueo.
- Todo en Cloudflare: TanStack Start en Pages/Workers, D1 para el catálogo y la analítica, R2 para el audio, subidas prefirmadas directas a R2 para archivos de 220 MB y Web Push desde Workers.
- Un panel de administración tras Cloudflare Access, con verificación JWT en el servidor en cada escritura.
- Un monorepo con pnpm y Turborepo, con un sistema de diseño compartido (Storybook, Chromatic), Vitest y Playwright en Chromium y WebKit, y CI/CD en GitHub Actions; hecho con Claude Code.
Proyecto personal · octubre de 2026 – actualidad
Estuve pensando en una forma de fusionar en un proyecto mi currículum y que se viera que sé utilizar y aplicar inteligencia artificial al funcionamiento y al proceso de implementación. Así que un CV bot era una idea que cuadraba perfectamente con lo que buscaba. El paisaje de las Highlands es perfecto en referencia y como agradecimiento a la tierra que tan bien me ha acogido y en la que vivo y disfruto.
- Un asistente sobre Claude, con el Vercel AI SDK, cuyas herramientas de solo lectura devuelven únicamente datos que he confirmado; cada dato que cita tiene que haberlo consultado.
- Límites diarios en Cloudflare D1: 30 preguntas por visitante y un tope de gasto, contando a los visitantes por un hash que cambia cada día, nunca por su IP.
- Evals de LLM en CI: el asistente real responde a los casos y un segundo modelo, calibrado antes de cada ejecución, juzga cada frase.
- Hecho con Claude Code bajo una configuración de agentes escrita: AGENTS.md, reglas, hooks, skills y subagentes revisores.
- Un valle de las Highlands en directo: la estación sigue la fecha, el cielo el sol sobre Glasgow, y el tiempo es el de Glasgow.