diff --git a/README.md b/README.md index 0824dde..a720d52 100755 --- a/README.md +++ b/README.md @@ -1,6 +1,79 @@ # Horarios UNSA -> ¡Ahora con JSX! +Horarios UNSA es una página que permite a los alumnos de la Universidad Nacional de San Agustin +crear fácilmente sus horarios, sin que se crucen horas. + +https://horarios.araozu.dev + +## Configuración + +Requisitos: + +- Node.js LTS +- pnpm, npm o yarn +- Conocimientos de pnpm/npm/yarn, TypeScript, JSX, Solid.js y Aphrodite css + +Instalación: + +- Clonar el repositorio +- Instalar dependencias +- Ejecutar script `start` para ejecutar el servidor, o `build` para compilarlo + +## Arquitectura + +## Formato de horarios + +La información de los horarios se almacena en public/horarios/ en formato YAML. + +El formato es el siguiente: + +```ts +interface DatosCarrera { + titulo: string, + // Contiene información adicional del horario + descripcion: string, + // Fecha de creación del horario en formato YYYYMMDD + version: number, + // Datos de los años de las carreras + años: { + // key es el nombre del año: 1er año, 2do año, etc + [key: string]: { + // nombre es el nombre del curso. + // Este nombre es referencial, no se muestra + // en el programa + [nombre: string]: Curso, + }, + }, +} + +interface Curso { + // Nombre completo del curso + nombre: string, + // Nombre del curso abreviado + abreviado: string, + // Información de las horas de teoria + Teoria: { + // grupo es una letra: A, B, C, D + [grupo: string]: DatosGrupo, + }, + // Información de las horas de laboratorio + Laboratorio?: { + // grupo es una letra: A, B, C, D + [grupo: string]: DatosGrupo, + }, +} + +interface DatosGrupo { + // Nombre del docente de este grupo + Docente: string, + /* + Las horas del curso en el siguiente formato: DD_HHMM + DD puede ser Lu, Ma, Mi, Ju, Vi + Ejm: Ma0850, Vi1640, Ju1550 + */ + Horas: string[] +} +``` ## Versiones anteriores diff --git a/src/App.tsx b/src/App.tsx index d17310e..267e5e6 100755 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,48 +1,10 @@ -import { BarraSuperior } from "./BarraSuperior" -import { ContenedorHorarios } from "./ContenedorHorarios/ContenedorHorarios" -import { Wallpaper } from "./Wallpaper" -import { Show, createSignal } from "solid-js" -import { css } from "aphrodite" -import { estilosGlobales } from "./Estilos" -import { Creditos } from "./Creditos" +import {Main} from "./Views/Main" +import {Index} from "./Views/Index" function App() { - /// @ts-ignore - const soportaBackdropFilter = document.body.style.backdropFilter !== undefined - const mostrarMensajeBackdropFilterRaw = !localStorage.getItem("mensaje-backdrop-filter-oculto") - - const [mostrarMensajeBackdropFilter, setMostrarMensaje] = createSignal(mostrarMensajeBackdropFilterRaw) - - const ocultarMensajeBackdropFilter = () => { - setMostrarMensaje(false) - localStorage.setItem("mensaje-backdrop-filter-oculto", "true") - } - return ( -
+ Esta página te permite crear tu horario fácilmente, sin importar de que + año son los cursos. +
++ Ingeniería de Sistemas cuenta con horarios de teoria y laboratorio automáticos, + el resto de carreras solo cuenta con teoria y necesitan que el alumno inicie + sesión. +
++ Se recomienda usar un computador/laptop y un navegador actualizado (Firefox, Chrome, Qutebrowser). +
+