Generador de certificados en PDF para el XXVI Encuentro Nacional de Estudiantes de Matemáticas (ENEM).
Genera certificados personalizados en PDF a partir de datos CSV usando plantillas HTML personalizables. Soporta múltiples tipos de certificados con plantillas específicas.
├── examples/ # Ejemplos HTML de cada plantilla
├── input/ # Archivos CSV de entrada
├── output/ # PDFs generados (organizados por plantilla)
│ ├── attendant/
│ ├── poster/
│ └── ...
├── private/ # Archivos privados (firmas, etc.) - no sincronizados
├── src/
│ ├── templates/ # Plantillas HTML de certificados
│ ├── assets/ # Recursos (imágenes decorativas)
│ └── index.ts # Código principal
pnpm installpnpm start- Procesa automáticamente todos los archivos CSV en
input/ - Para cada CSV busca la plantilla correspondiente en
src/templates/ - Ejemplo:
input/attendant.csv→src/templates/attendant.html→output/attendant/
pnpm start <plantilla>- Procesa una plantilla específica buscando automáticamente su CSV correspondiente en
input/ - Ejemplo:
pnpm start custombuscainput/custom.csvy usasrc/templates/custom.html
pnpm start <plantilla> <archivo.csv>- Procesa una plantilla específica con un CSV específico
- Ejemplo:
pnpm start attendant input/attendant.csv
Los archivos CSV deben incluir estas columnas mínimas:
id,nombre
1,Juan Pérez Fernández
2,María López Hurtado
Columnas adicionales según el tipo de certificado:
tipoNif,nif- Para todos los certificados excepto los personalizados (plantillacustom)tituloPoster- Para certificados de pósterescargo- Para certificados de organización o voluntariostitulo- Para el título del documento (plantillacustom)texto- Para certificados personalizados (plantillacustom)
Nota: Las columnas day, month y year se generan automáticamente con la fecha actual.
La plantilla custom permite texto completamente personalizable usando HTML:
id,nombre,titulo,texto
JP,Juan Pérez,Certificado conferenciante XXVI ENEM,"ha impartido la conferencia titulada <b>«Las mates molan»</b> en el <b>XXVI Encuentro Nacional de Estudiantes de Matemáticas (ENEM)</b> celebrado en Granada, entre el 22 y el 27 de julio de 2025 en la Universidad de Granada."
- Plantillas: Edita los archivos en
src/templates/para cambiar diseño y texto - Ejemplos: Consulta
examples/para ver cómo se ven las plantillas - Recursos: Las imágenes se cargan desde
src/assets/yprivate/ - Archivos privados: Coloca firmas y otros archivos sensibles en
private/