Portafolio Profesional Autogestionable
Prueba el panel admin en vivo → perfil.gilman.pro/static/admin-demo/ — Una demo funcional del panel de administración para que explores todas las secciones sin necesidad de autenticación.
Estado: ✅ Producción activa en perfil.gilman.pro Rol: Desarrollador de Soluciones Tecnológicas (creación individual) Tiempo de desarrollo: 1 mes
🏆 Logros Clave
- CMS completo en producción real con panel de administración, blog, proyectos, CV y más
- Seguridad profesional: protección contra ataques web, autenticación segura, límites de uso por IP
- Almacenamiento híbrido: usa la nube como almacenamiento principal y el disco local como respaldo automático
- SEO completo: el sitio está optimizado para aparecer en buscadores (Google, Bing), con sitemaps dinámicos, RSS y etiquetas para redes sociales
- Panel admin demo público que cualquiera puede explorar sin pedir credenciales
- Estadísticas de visitas sin guardar direcciones IP — respetuoso con la privacidad
- Dos versiones de CV en PDF: uno optimizado para sistemas automáticos (ATS) y otro con diseño visual de dos columnas
Tecnologías Principales
| Área | Tecnologías |
|---|---|
| Backend | Python, FastAPI |
| Base de datos | PostgreSQL |
| Frontend | Tailwind CSS, HTMX, Alpine.js |
| Infraestructura | Docker, Cloudflare |
| Resend (correos automáticos) | |
| Almacenamiento | Cloudflare R2 + disco local |
¿Qué hace este proyecto?
Es mi portafolio profesional, pero construido como un producto completo. No es una página estática: es un sistema que me permite administrar todo el contenido desde un panel privado, sin tocar código.
Lo que incluye
- Página principal con mi perfil, proyectos destacados, blog, habilidades y formulario de contacto
- Sección “Sobre mí” con experiencia laboral, formación académica, hobbies y habilidades
- Blog para publicar artículos técnicos
- Galería de proyectos con filtros por categoría
- Certificaciones profesionales
- CV en PDF generado automáticamente en dos formatos
- Formulario de contacto con protección anti-spam
Panel de Administración
El corazón del sistema. Desde aquí se gestiona absolutamente todo el contenido del portafolio en tiempo real, sin escribir una sola línea de código.
¿Qué se puede hacer desde el Admin?
| Sección | ¿Qué puedes hacer? |
|---|---|
| Info Personal | Editar nombre, título, biografía, email, teléfono, redes sociales, logo y favicon |
| Experiencia | Agregar, editar o eliminar trabajos con fechas, categorías y contenido enriquecido |
| Educación | Gestionar formación académica con imágenes, fechas y orden personalizado |
| Hobbies | Agregar pasatiempos con íconos y colores personalizados |
| Habilidades | Crear grupos de habilidades (técnicas, blandas, etc.) y asignar habilidades a cada grupo |
| Proyectos | CRUD completo con imágenes, tecnologías, enlaces y categorías |
| Blog | Editor completo de artículos con soporte para arrastrar y soltar archivos |
| Certificaciones | Gestionar certificados con emisor, fecha y estado (vigente/expirado) |
| Categorías | Crear y eliminar categorías para organizar el contenido |
| Secciones | Reordenar y mostrar/ocultar secciones del sitio con arrastrar y soltar |
| Mensajes | Bandeja de entrada con filtros y exportación a CSV |
| Archivos | Gestor de archivos con subida múltiple, descarga y eliminación |
| Configuración | Colores del sitio, logo, favicon, texto de correo automático |
| Estadísticas | Dashboard con gráfico de visitas, páginas más vistas, proporción bots vs humanos |
| Cambiar Contraseña | Formulario con verificación de seguridad |
Demo Público
Puedes explorar el panel sin necesidad de registro en perfil.gilman.pro/static/admin-demo/. Es una réplica funcional con datos de ejemplo que se ejecuta completamente en el navegador.
Seguridad
El sistema implementa varias capas de protección:
- Autenticación segura con tokens de acceso temporales y contraseñas encriptadas
- Protección CSRF que evita ataques de falsificación de solicitudes
- Límite de uso en el formulario de contacto para evitar spam
- Cabeceras de seguridad en todas las páginas (HSTS, Content Security Policy, etc.)
- Recuperación de contraseña con enlaces temporales que expiran en 15 minutos
- Detección de bots para mantener las estadísticas limpias
SEO y Visibilidad
El sitio está optimizado para que reclutadores y buscadores encuentren la información fácilmente:
- Meta etiquetas dinámicas para cada página (título, descripción, Open Graph, Twitter Card)
- Datos estructurados (JSON-LD) para que Google entienda el contenido
- Sitemap XML automático para que los buscadores indexen todo el contenido
- Feed RSS para que puedan seguir las publicaciones del blog
- Archivos
llms.txtoptimizados para asistentes de IA - URLs amigables y contenido responsive
Correo Automático
- Autorespuesta de contacto: cuando alguien envía un mensaje, recibe una confirmación automática
- Recuperación de contraseña: enlace seguro para restablecer la contraseña del admin
- Todo funciona con el servicio Resend y el dominio
gilman.pro
Generación de CV en PDF
El sistema genera automáticamente dos versiones del CV al iniciar:
- CV para sistemas ATS: una columna, sin colores, tipografía limpia — optimizado para que los sistemas de reclutamiento lo lean correctamente
- CV visual: diseño moderno de dos columnas con sidebar oscuro y acentos de color
Si se sube un PDF personalizado desde el admin, el sistema respeta ese archivo y no lo sobrescribe.
Infraestructura
- Docker: la aplicación y la base de datos corren en contenedores separados
- Cloudflare: maneja el SSL, la caché y la protección contra ataques DDoS
- Almacenamiento en la nube: las imágenes y archivos se guardan en Cloudflare R2, con respaldo automático en el disco local
- Actualizaciones automáticas: al iniciar, el sistema verifica y aplica cambios en la base de datos sin intervención manual
¿Qué aprendí?
Este proyecto representa mi portafolio profesional convertido en producto. Más allá del currículum, es una plataforma que demuestra mis capacidades como Desarrollador de Soluciones Tecnológicas.
Habilidades que desarrollé
- Arquitectura backend en producción: construir una aplicación web completa desde cero, con rutas públicas, panel admin y APIs
- Seguridad web real: no es teoría — implementé protección contra ataques en un sistema expuesto a internet
- Bases de datos relacionales: modelado de datos, consultas optimizadas, migraciones automáticas
- Docker: configuración de contenedores para desarrollo y producción
- Frontend moderno sin frameworks pesados: interactividad completa usando herramientas ligeras (HTMX + Alpine.js)
- SEO técnico: optimización para buscadores, datos estructurados, sitemaps dinámicos
- Correo transaccional: integración con servicios de email para autorespuesta y recuperación de contraseña
- Generación de PDFs: creación de documentos con diseño profesional desde código
- Analítica propia: sistema de estadísticas sin Google Analytics, respetuoso con la privacidad
Lo que más valoro
- Un sistema en producción real que uso para presentarme profesionalmente
- Seguridad implementada de verdad, no solo configuraciones por defecto
- Un panel admin completo con demo público que cualquiera puede explorar
- Saber que cada línea la entiendo porque la escribí, debugueé y desplegué yo mismo
Diagrama de la Aplicación
graph TB
subgraph Internet["🌐 Internet"]
V["Visitantes"]
A["Admin"]
BOT["Buscadores
Google / Bing"]
end
subgraph CF["Cloudflare"]
CDN["SSL / CDN / Protección"]
end
subgraph Servidor["Servidor Docker"]
APP["App Web
FastAPI + Python"]
DB["Base de Datos
PostgreSQL"]
end
subgraph Nube["Cloudflare R2"]
R2["Almacenamiento
Imágenes / Archivos / PDFs"]
end
subgraph Email["Resend"]
ML["Correos automáticos
Autorespuesta / Recuperación"]
end
V --> CDN
A --> CDN
BOT --> CDN
CDN --> APP
APP --> DB
APP --> R2
APP --> ML
Hecho con IA, pero con criterio humano
Sí, este proyecto se construyó con ayuda de asistentes de IA. Pero la IA no tomó ninguna decisión de arquitectura, no resolvió bugs, no configuró la seguridad ni desplegó el sistema en producción. La IA aceleró la escritura de código repetitivo y sugirió enfoques, pero cada línea fue revisada, cada error fue corregido, y cada decisión fue tomada por mí.
- Más de 60 bugs documentados y resueltos en proyectos relacionados — cada uno fue una lección concreta
- Seguridad multi-capa que investigué, implementé y probé personalmente
- Infraestructura Docker que configuré desde cero
- Debugging real — los bugs no vienen con instrucciones. A veces el error es solo “no funciona” y hay que descubrir por qué
La IA es una herramienta poderosa, pero no reemplaza el criterio, la experiencia ni la capacidad de resolver problemas. Este proyecto es la prueba de que con conocimiento, disciplina y las herramientas adecuadas, se puede construir software profesional en producción, con ayuda de IA pero sin depender de ella.
Proyecto desarrollado por Gilberto Castillo — Julio 2026