
Toda la aplicación se rige a través del archivo docker-compose.yml y está construida con docker compose :
docker y docker-compose , esto puede necesitar un reinicio de su sistema ya que Docker es un programa de muy bajo nivel.docker compose up --build como un usuario con permisos para Docker, o con sudo / doas , se requiere el indicador de compilación si se ha cambiado el código de backend o frontend, además -d hará que se separe del terminal.docker compose restart , esto es necesario para que el analizador se ejecute y para que la tienda Vector pueda crear nuevas integridades. El backend está construido con Clojure, un lenguaje de programación funcional basado en LISP que se ejecuta en la máquina virtual Java.
Esta parte tiene múltiples propósitos, es responsable de raspar las páginas del curso de KU, así como de las estadísticas de Stads.
El backend también sirve al frontend y contiene la base de datos "DataScript" y es responsable de refrescarse y varios servicios ocasionalmente (esta característica está parcialmente rota en este momento).
Este servicio es responsable de las búsquedas semánticas utilizadas en la ruta get_course_overviews , en lugar de usar trigramas o texto completo, decidimos utilizar las búsquedas de vectores para la latencia más baja.
Este servicio es el analizador que toma las páginas de cursos raspadas y las analiza en un formato que podamos usar en la base de datos para buscar y servir a la interfaz.
Frontend está integrado en eslvé/mecanografiado. Este es un spa muy responsable que muestra los cursos en forma de tarjetas en las que se puede hacer clic para obtener una vista más detallada del curso.