Terminal
Mi portfolio como una terminal de Ubuntu: cada comando se resuelve en el servidor.
- Tipo
- Web
- Año
- Categorías

Sobre el proyecto
Mi portfolio convertido en una terminal parecida a la de Ubuntu, a pantalla completa: la misma información de la web principal (quién soy, mi carrera, mis proyectos y mis artículos) recorrida con comandos.
Objetivo. Ofrecer a desarrolladores y reclutadores técnicos una forma de conocerme que habla su idioma y se recuerda, sin renunciar a lo importante: cada comando se resuelve en el servidor y todo lo que responde es texto, así que se indexa, se lee con un lector de pantalla y funciona sin JavaScript.
Qué hace.
- Arranca con
neofetch, ygit logcuenta mi carrera. ls,cd,catytreerecorren un sistema de archivos virtual construido con el contenido real del portfolio.jp2adibuja imágenes como texto, yvi,nano,lessymanabren los archivos en modo lectura.- 39 comandos en total, ocho temas de color, cambio de idioma con
locale, autocompletado con el tabulador y sugerencias cuando un comando no existe. - Dos easter eggs esperando a quien pruebe comandos de verdad.
- Desde el backoffice activo o desactivo cada comando, veo cuáles se usan y recojo como ideas los que los visitantes escriben y todavía no existen.
Ver los datos: Los 39 comandos, por tipo
| Categoría | Comandos |
|---|---|
| Shell | 9 |
| Portfolio | 8 |
| Ficheros | 7 |
| Visitante | 5 |
| Programas | 5 |
| Legales | 3 |
| Easter eggs | 2 |
SEO. Solo se indexa una página por idioma (español, inglés y japonés), con canónica propia, hreflang con x-default, sitemap y robots. Sus datos estructurados (WebSite y WebPage) apuntan a la persona del portfolio principal, y las respuestas de los comandos nunca se indexan.
Accesibilidad. Funciona sin JavaScript: la línea de comandos es un formulario de verdad. El foco se queda en la línea sin atrapar el teclado, el historial es una región log que leen los lectores de pantalla, cada dibujo en texto tiene su descripción, y los ocho temas pasan el contraste de 4,5:1. Admite zoom al 400 % y respeta la preferencia de reducir el movimiento.
Rendimiento. Un único componente de cliente dentro de un presupuesto de 25 kB, y la tipografía Ubuntu Mono alojada en el propio sitio y recortada a los caracteres que usa.
Seguridad y privacidad. Los comandos se interpretan en el servidor y nunca ejecutan una shell real. Tienen límites de longitud, de palabras, de comandos encadenados y de tamaño de respuesta, la política de seguridad de contenido usa un nonce por petición, se comprueba el origen y hay límite de peticiones. Lo que se escribe tras sudo, su o passwd no se registra nunca.

Arquitectura y calidad. Next.js con arquitectura hexagonal en seis módulos y 55 archivos de tests, que pasan con el formato, el lint y los tipos en GitHub Actions antes de cada despliegue. Lee el contenido de la API privada de la plataforma con una clave propia.
Estado. Publicada desde octubre de 2026.



