Skip to content
This repository has been archived by the owner on Oct 23, 2024. It is now read-only.

Latest commit

 

History

History
101 lines (70 loc) · 4.05 KB

README.md

File metadata and controls

101 lines (70 loc) · 4.05 KB


banner TempLeX

Generador de plantillas en LaTeX

DescripciónUsoContribuirCreditosSoporteLicencia


Descripción

El proyecto va a consistir en una SPA que se podría generalizar en 3 cosas principales: la interfaz web, la API y en generador de plantillas (de la mano con la api)

  • Para la interfaz web no hay nada decidido de cómo se va a realizar, por lo que es algo que se puede discutir. Quizás ni siquiera sea necesario un framework, pero esta como opción usar Vite-react con tailwind css para los estilos. De forma general, el front es un formulario que pregunta al usuario por alguna plantilla pre definida o personalizada y luego permite editar cosas como la portada, indices, columnas, letra, márgenes, si incluye tutoríal o no, etc.

  • Para la API usaremos python con la librería FastApi para manejar las solicitudes y Gunicorn como servidor.

  • Cuando se realiza una solicitud de compilación, se crea una tarea en una cola que construye una plantilla de LaTeX con ayuda de jinja en base a un .json recibido desde el front, para luego ser comprimido en un .zip y enviado nuevamente al usuario.

En un futuro sería bueno ver cómo podemos pre generar algunos resultados en base a plantillas pre hechas y así quitarle algo de carga del servidor.

(volver arriba)

TODO

  • Crear la API con Fast Api
  • Hacer un generador de .tex con jinja
  • Convertir los templates de OSUC en una plantilla general.
  • Filtrar lista de archivos incluidos en el .zip segun la data
  • Dar soporte a la funcion pandoc_convert() realizada con pandoc
  • Ver como poder recibir png/jpg/pdf (impedir svg) y configurarlo para agregarlo en el resultado final
  • Agregar soporte para otros estilos de citación
  • Configurar API
  • Mejorar el tutorial de cómo usar LaTeX que se incluye por defecto
  • Estudiar como comprimir el zip y enviar los archivos al front
  • Manejó de errores y documentación de la API
  • (opcional) crear la vista con Figma
  • Crear la vista con algún framework de preferencia (consultarlo)
  • Ver cómo optimizar la generación de archivos, buscando como pre generar algunas plantillas por defecto
  • Pasar a Docker el proyecto
  • Configurar un devcontainer

Uso

# Solo 1 vez
python3 -m venv env
source env/bin/activate

# Solo 1 vez (o cuando se agregan dependencias)
python -m pip install --upgrade pip
pip install -r requirements.txt

(volver arriba)

Contribuir

# Para actualizar los requirements.txt
pip freeze > requirements.txt

Bug Reports & Feature Requests

Utilice las issues para informar cualquier bug o solicitud.

Workflow

El workflow es PR a development -> Revisar preview y checks -> Asignar reviewers -> Aprobación -> Merge a development

La información detallada sobre cómo contribuir se puede encontrar en contributing.md.

Necesitas contactarnos

Comuníquese con nosotros a travez de OSUC.dev

(volver arriba)

Creditos

Mantenedores

(volver arriba)

Licencía

License: MIT

(volver arriba)