Aplicación web para la generación de códigos QR profesionales con dos modos principales:
- Generación masiva de QRs para credenciales (Lanyards)
- Generación individual de QRs para múltiples usos
- Interfaz moderna y responsiva con Tailwind CSS
- Soporte multiidioma (Español/Inglés)
- Previsualización en tiempo real
- Múltiples formatos de descarga (PNG/SVG)
- Personalización completa del diseño
- Integración de logos
- Carga masiva de datos mediante CSV
- Generación de vCards profesionales
- Vista previa y edición de datos
- Empaquetado automático en ZIP
- Validación de datos en tiempo real
Soporta múltiples tipos de contenido:
- URLs
- Texto plano
- Tarjetas de contacto (vCard)
- Teléfono
- WiFi
- Ubicación geográfica
- Eventos de calendario
- SMS
- Redes sociales
- Frontend: React + TypeScript
- Estilos: Tailwind CSS
- Iconos: Lucide React
- Generación QR: qrcode.js
- Procesamiento CSV: PapaParse
- Empaquetado: JSZip
# Clonar el repositorio
git clone https://github.com/686f6c61/generador-QR.git
# Instalar dependencias
npm install
# Iniciar en modo desarrollo
npm run dev
# Construir para producción
npm run build
- Descarga la plantilla CSV
- Completa la información de los contactos
- Sube el archivo CSV
- Configura las opciones del QR
- Añade un logo (opcional)
- Genera y descarga los códigos QR
El archivo CSV debe contener los siguientes campos:
firstName,lastName,organization,title,email,phone,website,address
Campo | Descripción | Requerido | Ejemplo |
---|---|---|---|
firstName | Nombre de la persona | Sí | Juan |
lastName | Apellidos | Sí | Pérez García |
organization | Empresa u organización | No | Empresa S.A. |
title | Cargo o posición | No | Director Técnico |
Correo electrónico | Sí | [email protected] | |
phone | Teléfono (formato internacional) | Sí | +34 600000000 |
website | Sitio web | No | https://www.empresa.com |
address | Dirección postal | No | Calle Principal 123, Madrid |
- Email: Debe ser una dirección de correo válida
- Teléfono: Formato internacional con prefijo de país
- Máximo: 150 registros por archivo
- Formato: UTF-8 con separador de coma (,)
-
URL
- URLs web completas
- Validación de formato
-
Texto
- Texto plano
- Límite de 300 caracteres
-
vCard
- Información completa de contacto
- Formato vCard 3.0
-
Email
- Dirección de correo
- Asunto predefinido
- Cuerpo del mensaje
-
Teléfono
- Formato internacional
- Marcación directa
-
WiFi
- SSID y contraseña
- Soporte WPA/WEP/Sin contraseña
- Redes ocultas
-
Ubicación
- Coordenadas GPS
- Búsqueda por nombre
-
Calendario
- Título y descripción
- Fecha y hora
- Ubicación
- Eventos de día completo
-
SMS
- Número de teléfono
- Mensaje predefinido
-
Redes Sociales
-
Colores
- Color de fondo
- Color del QR
-
Dimensiones
- Tamaño (100-1000px)
- Margen (0-10)
-
Técnicas
- Nivel de corrección de errores (L/M/Q/H)
- Estilo de esquinas (cuadradas/redondeadas)
-
Logo
- Subida de imagen
- Tamaño ajustable (10-30%)
- Máximo 500KB
La aplicación utiliza Tailwind CSS para los estilos. Para personalizar:
-
Modifica
tailwind.config.js
para ajustar:- Colores
- Tipografía
- Espaciado
- Breakpoints
-
Extiende los estilos en
index.css
Las traducciones se gestionan en src/utils/i18n.ts
:
- Añade nuevos idiomas al objeto
languages
- Implementa todas las claves requeridas
- Actualiza el selector de idiomas en el componente
Header
MIT License - ver LICENSE.md para más detalles
- Fork del repositorio
- Crea una rama para tu feature (
git checkout -b feature/AmazingFeature
) - Commit de tus cambios (
git commit -m 'Add some AmazingFeature'
) - Push a la rama (
git push origin feature/AmazingFeature
) - Abre un Pull Request