Juan Jaramillo
software
developer
Sobre mí
Desarrollador Full Stack con experiencia creando y desplegando aplicaciones web listas para producción. He entregado sitios web para clientes y trabajado de cerca con equipos para crear soluciones escalables y fáciles de mantener. También manejo herramientas de OSINT y pentesting (Kali Linux, Burp Suite, Wireshark, Metasploit) y buenas prácticas OWASP.
Experiencia
- -
Desarrollador FullStack @ Wikimedia Brasil
COL - RemotoResponsabilidades:
- Trabajo para Wiki Edu Hub donde creamos herramientas tecnológicas para la comunidad wikimedista
- React
- Ruby
- Ruby on Rails
- MySQL
- Sidekiq
- Redis
- JavaScript
- Webpack
- Docker
- Wikimedia
- -
Desarrollador FullStack @ Wikimedia Colombia
COL - RemotoResumen:
- trabajo en el programa de tecnologías y comunidades, donde me desenvuelvo como desarrollador de software creando experiencias digitales que van principalmente ligadas a la visualización de datos llamados del ecosistema wikimedista, además también contribuyo con las construcción metodológicos de procesos de datos abiertos
Responsabilidades:
- Ayudar a encontrar soluciones tecnológicas para proyectos de carácter social
- Contribuir con generación de datos relacionados con proyectos del capitulo en plataformas del ecosistema wikimedista
- Documentar y contribuir conla planeación estratégica y metodológicas para laboratorios de datos abiertos
- React
- Astro
- Next-Js
- Tailwind
- JavaScript
- React Query
- Linux
- TypeScript
- CSS3
- Git
- GitHub
- -
Operador de Nodos @ Nym VPN
CH - RemotoResumen:
- Nym es una red de privacidad descentralizada que proporciona anonimato y seguridad en línea mediante el uso de mixnets y otras tecnologías avanzadas. Al operar un nodo Nym, contribuyo a la infraestructura de la red, ayudando a garantizar que las comunicaciones de los usuarios permanezcan privadas y seguras.
Responsabilidades:
- Mantener y monitorear un nodo Nym para asegurar su funcionamiento óptimo dentro de la red.
- Colaborar con la comunidad Nym para mejorar la red y compartir mejores prácticas.
- Asegurar la privacidad y seguridad de los datos que pasan a través del nodo.
- Actualizar regularmente el software del nodo para incorporar mejoras y parches de seguridad.
- Participar en discusiones y actividades de la comunidad Nym para apoyar el desarrollo continuo de la red.
- Gestionar los recursos del nodo para optimizar el rendimiento y la eficiencia energética.
- Rust
- Linux
- Shell
- Git
- GitHub
- HTML5
- CSS3
- -
Web Master @ Platohedro
COL - HibridoResumen:
- Tengo más de nueve años de experiencia en comunicaciones, liderando proyectos tecnológicos orientados a resultados, incluyendo el desarrollo de aplicaciones y la operación/mantenimiento de infraestructura de IT
Responsabilidades:
- construir experiencias multimedia orientadas a los resultados de procesos artísticos y formativos
- Mantenimiento de la infraestructura IT de la corporación.
- Documentación de software
- Producción de piezas sonoras para podcast y paginas web
- WordPress
- HTML5
- CSS3
- Tailwind
- JavaScript
- TypeScript
- Next-Js
- React
- NodeJS
- Shell
- Git
- GitHub
Proyectos
Línea de tiempo interactiva que conecta los gobiernos de Colombia con episodios clave del fútbol nacional. Inspirada en el episodio 'Historias Secretas: Los Presidentes y el Fútbol' de Alejandro Pino Calad y Wallas. Cada entrada incluye contexto histórico, imágenes, fuente y enlaces de referencia.
- ⏳ Línea de tiempo vertical con IntersectionObserver
- 🔎 Búsqueda en tiempo real con highlight de resultados
- 🖼️ Imágenes con lazy loading y efecto parallax
- 🌍 Bilingüe español/inglés con ngx-translate
- 🌗 Modo oscuro/claro con persistencia
- 🎨 Componentes UI con PrimeNG
- 📱 Diseño responsivo
- Angular
- TypeScript
- PrimeNG
- RxJS
- CSS3
Plataforma de registro para el 7mo Congreso Latinoamericano y Caribeño de Culturas Vivas Comunitarias (Pasto, Cali, Medellín — Abril 2026). Landing page con formulario de inscripción, panel de administración con gestión de cupos por sede y tabla de inscritos, con autenticación y base de datos en Supabase.
- 📋 Formulario de preinscripción con selección de sede
- 🛡️ Panel admin con login y dashboard de gestión
- 📊 Tabla de inscritos con filtros y control de cupos por sede
- 🔐 Autenticación y base de datos con Supabase
- 🌍 Bilingüe español/inglés con next-intl
- 🎨 Diseño con estética de afiche oficial latinoamericano
- Next.js
- React
- TypeScript
- Tailwind
- Supabase
- PostgreSQL
Memorial digital colaborativo que honra a las víctimas de ejecuciones extrajudiciales ('falsos positivos') en Colombia. Proyecto conjunto entre Wikimedia Colombia y la Universidad Jorge Tadeo Lozano. Visualización 3D interactiva de un diente de león donde cada semilla representa una víctima, con datos desde Wikidata vía SPARQL.
- 🌱 Visualización 3D interactiva con Three.js y React Three Fiber
- 🔎 Consultas SPARQL a Wikidata para datos estructurados de víctimas
- 🗺️ Mapa de memorias con filtros por región y línea de tiempo
- 🎧 Sección 'Escucha sus voces' con testimonios en audio de madres de MAFAPO
- 📂 Archivo comunitario en Wikimedia Commons
- 🌍 Bilingüe español/inglés con i18n integrado
- 🧩 Despliegue en Toolforge con Node.js
- Astro
- React
- Three.js
- TypeScript
- Bootstrap
- Wikidata
- SPARQL
- Node.js
- Toolforge
Dashboard para monitorear gateways y nodos de la red Nym. Consulta datos en tiempo real desde la API de Nym Validator y SpectreDAO, mostrando rendimiento, routing score, stake, rewards e historial de desempeño con gráficos SVG.
- 📊 Dashboard en tiempo real con auto-refresh cada 5 min
- 🖥️ Página de detalle por nodo con rendimiento, staking y rewards
- 📈 Gráficos SVG de historial de desempeño a 30 días
- 🔗 Datos desde Nym Validator API y SpectreDAO API
- 🎨 UI moderna con Tailwind CSS v4
- 🧭 Agrupación de nodos (NOI / Platohedro)
- React
- Vite
- Tailwind
- JavaScript
- Node.js
Una plataforma web interactiva sobre traducción e interpretación judicial (con el lema 'Claridad - Competencia cultural - Juicio ético'). Incluye información sobre los servicios prestados y detalles de contacto.
- � Sitio web institucional
- � Diseño responsivo e interactivo
- �️ Optimización de imágenes y metaetiquetas (SEO)
- 🚀 Despliegue optimizado
- Angular
- TypeScript
- Tailwind
- HTML5
- CSS3
Esta visualización es una representación artística y sintética de la mecánica de los conflictos geopolíticos. Los vectores de datos, las cargas útiles y los objetivos se simulan algorítmicamente con fines meramente demostrativos integrando sonido. API simuladas: GDELT, SIPRI, Sat Intel.
- 🎵 Tone Js para síntesis y control de audio en el navegador
- 🖌️ ThreeJs para renderizado 3D de elementos visuales
- 🧊 Angular para la estructura de la aplicación
- 💡 Simulación de datos geopolíticos
- 📊 Representación de vectores de ataque y objetivos
- Angular
- Tone-Js
- TypeScript
- Tailwind
- Three-Js
Sitio web para navegar las experiencias creadas por niñas y niños del proyecto Matinée (Platohedro). En esta iteración se dio énfasis al juego de autocuidado, a una galería 3D de personajes, y a la integración estética tipo “sticker” con los logos institucionales.
- 🎵 Web Audio API, notas interactuando.
- 🖌️ Canvas 2D; mezcla de coloreas
- 🧊 Atril modelado en 3D, personajes en FBX
- 💡 Simulación interactiva tipo lámpara
- ♟️ Tablero rectangular de 45 casillas
- 🎰 Tragamonedas vertical para crear criaturas
- Next-Js
- Drei
- TypeScript
- Tailwind
- Three-Js
Hidropoéticas es una experiencia web interactiva que explora la relación entre el arte, la cultura y los cuerpos de agua en Colombia. El proyecto presenta tres importantes fuentes hídricas: Río de Oro, Río Quilichao y la Quebrada Santa Elena, cada una con su propia historia y significado cultural.
- 🌊 Efectos de agua y ondulacion interactivos
- 🖱️ Transiciones y efectos de desplazamiento
- 🧩 Secciones interactivas por cuerpo de agua
- 🧊 Animaciones y efectos de agua usando Three.js
- 📱 Diseño responsivo
- Astro
- TypeScript
- React
- JQuery
- Three-Js
Visualización interactiva de línea de tiempo sobre los casos de “falsos positivos” en Colombia (2002–2008), alimentada desde Wikidata mediante consultas SPARQL y presentada con Histropedia.
- ⏳ Línea de tiempo interactiva (Histropedia)
- 🔎 Datos desde Wikidata Query Service (SPARQL)
- 🗓️ Filtrado por rango temporal (2002–2008)
- 🗺️ Filtrado por región / lugar significativo
- 🧭 Controles de zoom y recenter
- ⚡ Carga asíncrona + manejo de errores
- 📱 Diseño responsivo
- Astro
- JavaScript
- CSS
- Wikidata
- SPARQL
- Histropedia
- jQuery
- Express
- Toolforge
API y UI web para consultar SECOP II (Datos Abiertos Colombia): búsqueda por URL/noticeUID o palabra clave, normalización de procesos/contratos y consulta de proveedores por NIT. Incluye versión desktop en Tkinter y despliegue en Fly.io con Docker.
- 🌐 API web con FastAPI
- 🖥️ App de escritorio con Tkinter
- 🧭 Búsqueda por URL/noticeUID y palabra clave
- 🗂️ Datasets SECOP II (Procesos y Contratos)
- 🏢 Consulta de proveedores por NIT + enlace a RUES
- 💰 Formateo de valores en COP
- 🐳 Docker + despliegue en Fly.io
- 🤖 GitHub Actions (deploy y binarios PyInstaller)
- Python
- FastAPI
- Requests
- Uvicorn
- Tkinter
- Docker
- Fly.io
Sitio web interactivo sobre historias de fútbol en medellín, con efecto de libro, construido con Astro, React y Tailwind CSS.
- 🚀 Renderizado estático con Astro
- 🎨 Estilización con Tailwind CSS
- ⚛️ Integración con React para componentes interactivos
- 🖼️ Optimización de imágenes con Sharp
- 🗺️ Generación automática de sitemap
- React
- tailwind
- Rest-Api
- Hostinger
Memorial digital colaborativo que documenta murales y expresiones de arte urbano en Colombia, integrando Wikimedia Commons y Wikidata. Incluye exploración, mapa interactivo y páginas por ciudad/mural con galerías y audios.
- 🗺️ Mapa interactivo con Leaflet + popups y enlaces a detalle
- 🔎 Explorador con búsqueda por ciudad y texto
- 🧩 Páginas dinámicas por ciudad/mural (/{city}/{slug})
- 🖼️ Medios servidos desde Wikimedia Commons (Special:FilePath)
- 🎧 Audios testimoniales integrados desde Commons (OGG/MP3)
- 🔁 Sincronización automática desde la categoría de Commons
- ⏱️ Revalidación periódica en Toolforge (≈15 min)
- Next-Js
- React
- TypeScript
- tailwind
- Leaflet
- Wikidata
- Wikimedia Commons
- Docker
- Toolforge
Plataforma ded streaming de audio para el podcast de Platohedro, con episodios descargables y reproductor integrado.
- 🚀 Frontend con Astro
- 🔗 Audios indexados externamente
- 🗂️ Categorización de programas
- 📱 Diseño adaptable a móvil
- Astro
- TypeScript
- tailwind
- javascript
- NPM
Emisora de Radio online
- 🛠️ Servidor Apache
- 📡 Streaming de audio vía Icecast2
- 🚀 Frontend con Astro
- 💬 Chat online
- 📻 Radio en vivo
- 📱 Diseño adaptable a móvil
- Astro
- TypeScript
- tailwind
- Apache
- Linux
- Hostinger
Nodo IoT en Raspberry Pi que lee un sensor de movimiento PIR por GPIO, controla un LED y envía eventos (0/1) por OSC/UDP a una app receptora (por ejemplo, OpenFrameworks).
- 🚶 Lectura del sensor PIR en GPIO (onoff)
- 💡 Encendido/apagado de LED según detección
- 📡 Envío de mensajes OSC por UDP (/PIR, 0/1)
- 🔧 Configuración simple de IP/puerto y pines
- 🎛️ Integración con OpenFrameworks (oscReceiveExample)
- 🧹 Liberación de GPIO al salir (unexport)
- Node.js
- Raspberry Pi
- Linux
- GPIO
- OSC
- UDP
Herramienta CLI para convertir texto a voz (TTS) y generar MP3 con gTTS. Permite escribir el texto en la terminal, genera el audio y lo reproduce automáticamente con mplayer.
- 🖥️ Interfaz 100% en terminal (entrada por stdin + Ctrl+D)
- 🗣️ Conversión texto→voz con gTTS (Google TTS)
- 🎧 Generación de MP3 y reproducción automática con mplayer
- 🧰 Instalador de dependencias (apt/pacman/dnf/zypper)
- 🌍 Idioma configurable (por ejemplo: es, en, fr)
- 🔁 Conversión en bucle para múltiples textos
- Python
- Bash
- gTTS
- mplayer
- Linux
Habilidades
- HTML
- CSS
- Tailwind
- Bootstrap
- JavaScript
- TypeScript
- Next-Js
- Astro
- React
- Go-lang
- Angular
- Node
- PNPM
- Java
- MongoDB
- SQL
- Git
- GitHub
- Renardo
- Docker
- Shell
- Linux
- Swagger
- Postman
- Kali Linux
- OSINT
- Pentesting
- Burp Suite
- Metasploit
- Wireshark
- OWASP