IT Tools: Colección de herramientas online para desarrolladores

Publicado por


it-tools
Open Source

IT Tools: Colección de herramientas online para desarrolladores

Autohospeda una suite completa de utilidades para desarrollo con Docker

Vídeo tutorial en YouTube

Mira el vídeo completo sobre cómo instalar y usar IT Tools: Colección de herramientas online para desarrolladores en el canal GENBYTE:

¿Qué es IT Tools: Colección de herramientas online para desarrolladores?

IT Tools es una colección de herramientas online diseñadas para desarrolladores y profesionales de IT, accesibles a través de una interfaz web moderna y cuidada. El proyecto, desarrollado por Corentin Thomasset, agrupa utilidades de conversión, generación, formateo, codificación, criptografía, red, texto y más, todo en una única aplicación web. La versión pública está disponible en it-tools.tech, pero el proyecto está pensado para autohospedarse fácilmente mediante Docker, lo que permite tener las herramientas bajo control propio, sin depender de servicios externos y con privacidad total. Está licenciado bajo GNU GPLv3 y cuenta con una comunidad activa de contribuyentes.

Más de 40.000 estrellas en GitHub y una arquitectura modular que permite añadir nuevas herramientas mediante un generador de boilerplate integrado.

Características principales

Amplio catálogo de herramientas

Incluye conversores (JSON, YAML, CSV, Base64, JWT, cron, color, unidades), generadores (UUID, ULID, contraseñas, QR, datos de prueba), formateadores (SQL, XML, JSON, Markdown), utilidades de red (subredes, MAC, IP), criptografía (hash, bcrypt, JWT), codificación/decodificación, y herramientas de texto, fecha, imagen y desarrollo.

Interfaz moderna y responsive

Construida con Vue 3, TypeScript, Vite, Pinia, Vue Router, Vue I18n y Naive UI, ofrece búsqueda global, modo oscuro/claro, internacionalización y experiencia de usuario pulida.

Autohospedaje sencillo con Docker

Imágenes oficiales en Docker Hub (corentinth/it-tools) y GitHub Container Registry (ghcr.io/corentinth/it-tools), con exposición en puerto 80 y configuración Nginx lista para producción.

Extensible por diseño

Incluye script `pnpm run script:create:tool` que genera la estructura base de una nueva herramienta en `src/tools`, registra la importación y permite categorizarla sin modificar el núcleo.

Despliegue continuo y multi-plataforma

Configuración para Vercel, Netlify, Cloudron, Tipi y Unraid, además de pipelines de renovación de dependencias (Renovate) y pruebas E2E con Playwright.

Requisitos del sistema

  • Docker Engine 20.10+
  • Docker Compose v2 (plugin o standalone)
  • Puerto 8080 disponible en el host (o el que se mapee)
  • Arquitectura compatible con imágenes multiarch (amd64, arm64)

Instalación con Docker Compose

Crear docker-compose.yml

Guarda el siguiente contenido en un archivo llamado docker-compose.yml en el directorio de despliegue. La imagen se construye automáticamente desde Docker Hub o GHCR; el puerto 80 del contenedor se mapea al 8080 del host.

version: '3.8'

services:
it-tools:
image: corentinth/it-tools:latest
container_name: it-tools
restart: unless-stopped
ports:
– "8080:80"
# Alternativa usando GitHub Container Registry:
# image: ghcr.io/corentinth/it-tools:latest

Levantar el servicio

Ejecuta docker compose up -d para descargar la imagen y arrancar el contenedor en segundo plano.

docker compose up -d

Verificar estado

Comprueba que el contenedor está sano y escuchando en el puerto esperado.

docker compose ps
curl -I http://localhost:8080

Acceder al proyecto

Interfaz web

Abre el navegador en http://localhost:8080 (o la IP del servidor si es remoto). La aplicación carga directamente el catálogo de herramientas sin necesidad de autenticación.

Casos de uso

  • Desarrolladores que necesitan convertir, formatear o validar datos (JSON, YAML, SQL, XML, CSV) sin instalar utilidades locales.
  • Equipos DevOps que requieren generar contraseñas seguras, UUIDs, códigos QR, tokens JWT o calcular subredes en entornos aislados.
  • Administradores de sistemas que prefieren mantener herramientas de diagnóstico (decodificación Base64, hash, análisis de certificados) en su propia infraestructura.
  • Entornos sin conexión a internet o con políticas de privacidad estrictas donde no se pueden enviar datos a servicios online de terceros.
  • Formación y talleres: disponer de un conjunto coherente de utilidades accesibles desde un único punto para alumnos o participantes.

Configuración avanzada

Personalizar configuración Nginx

El Dockerfile copia nginx.conf a /etc/nginx/conf.d/default.conf. Para ajustar cabeceras, compresión, caché o límites de subida, crea un nginx.conf propio y móntalo como volumen en docker-compose.yml.

services:
it-tools:
image: corentinth/it-tools:latest
container_name: it-tools
restart: unless-stopped
ports:
– "8080:80"
volumes:
– ./nginx-custom.conf:/etc/nginx/conf.d/default.conf:ro

Añadir herramientas propias

Clona el repositorio, ejecuta pnpm install y pnpm run script:create:tool mi-herramienta. Desarrolla la herramienta en src/tools/mi-herramienta, añádela a la categoría correspondiente en src/tools/index.ts y construye tu propia imagen con docker build -t mi-registro/it-tools:custom .

git clone https://github.com/CorentinTh/it-tools.git
cd it-tools
pnpm install
pnpm run script:create:tool mi-herramienta
# Editar src/tools/mi-herramienta/*
# Registrar en src/tools/index.ts
pnpm build
docker build -t mi-registro/it-tools:custom .

Despliegue detrás de proxy inverso (Traefik, Nginx Proxy Manager, Caddy)

Expón el servicio en un subdominio con TLS terminando en el proxy. El contenedor sigue escuchando en puerto 80 interno; el proxy gestiona certificados y redirección HTTPS.

# Ejemplo etiquetas Traefik en docker-compose.yml
services:
it-tools:
image: corentinth/it-tools:latest
container_name: it-tools
restart: unless-stopped
labels:
– "traefik.enable=true"
– "traefik.http.routers.it-tools.rule=Host(`tools.midominio.com`)"
– "traefik.http.routers.it-tools.tls=true"
– "traefik.http.services.it-tools.loadbalancer.server.port=80"

Gestión y mantenimiento

Actualizar a la última versión

Descarga la imagen más reciente y recrea el contenedor manteniendo la configuración.

docker compose pull
docker compose up -d

Ver logs en tiempo real

Útil para diagnosticar errores de arranque o peticiones fallidas.

docker compose logs -f it-tools

Backup de configuración personalizada

Si has montado volúmenes (nginx.conf, certificados, assets), respalda el directorio de despliegue completo.

tar -czf it-tools-backup-$(date +%F).tar.gz /ruta/al/directorio/despliegue

Limpiar imágenes antiguas

Libera espacio eliminando capas no usadas tras varias actualizaciones.

docker image prune -f

Stack técnico

  • Vue 3
  • TypeScript
  • Vite
  • Pinia
  • Vue Router
  • Vue I18n
  • Naive UI
  • Monaco Editor
  • UnoCSS
  • pnpm
  • Node.js (lts-alpine)
  • Nginx (stable-alpine)
  • Vitest
  • Playwright
  • ESLint
  • Prettier

Referencias oficiales

Apoya el canal GENBYTE

Sígueme en mis redes sociales

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *