Organizá tu Open Space! 😎
- Los asistentes de un Open Space no logran captar los datos de una charla, en la agenda se cambian de sala u horario, se superponen charlas del mismo tópico, y algunas salas suelen llenarse muy rápido.
- Smart Open Space es una web app que permite ver los datos de una charla por un proyector mientras su orador está exponiendo, me ofrece una agenda actualizada y, optimizada por tópicos y agrupando las charlas muy requeridas en espacios más grandes.
- A diferencia del método actual, Pizarrón + Google SpreadSheet, el nuestro no requiere carga manual, se encuentra siempre actualizado, y sugiere optimizaciones inteligentes.
- Git
- PostgreSQL
- JDK 8 update 60 o superior (Asegurate que la variable de entorno
JAVA_HOME
apunte a la carpetajdk1.8.0
que sacaste de la descarga del JDK). - NodeJS
- Yarn
git clone [email protected]:AugustoConti/smart-open-space.git
cd smart-open-space
- Crear base de datos, ejemplo:
psql -c 'create database SOS;' -U postgres
- Crear el archivo
application-default.properties
en la ruta/back/src/main/resources/
. Configurando url, usuario y contraseña:
spring.datasource.url=jdbc:postgresql://localhost:5432/sos
spring.datasource.username=postgres
spring.datasource.password=root
logging.appender.email.username=""
logging.appender.email.password=""
logging.appender.email.to=""
- Ejecutar back
cd back && ./gradlew bootRun
cd front && yarn && yarn watch
- Frontend:
- App.js: Punto de entrada de la aplicación.
- Routes: Detecta la ruta, y elige qué componente que corresponde renderizar.
- OpenSpace.js: Renderiza la pantalla con los datos del Open Space.
- os-client.js: Conseguir los datos del Open Space, conectandose con el backend.
- Backend:
- OpenSpaceController: Exponer los endpoints del OpenSpaceService, como REST-Json.
- OpenSpaceService: Exponer un servicio para manipular un Open Space.
- OpenSpaceRepository: Persistir y recuperar objetos OpenSpace de la base de datos.
- OpenSpace: Objeto que representa un Open Space.
- Organizador:
- Crear Open Space: Nombre, fecha, horarios y salas.
- Orador:
- Registro / Login: Registrarse con nombre, email y contraseña. Loguearse con email y contraseña
- Cargar charla: con título y descripción en un Open Space.
- Agendar charla: en una sala y un horario disponible en el Open Space.
- Asistente:
- Ver agenda: con todas las charlas en su horario y sala de un Open Space.
- Ver detalle de charla: Título, descripción, orador, sala y horario.
- Organizador:
- Iniciar Marketplace: Habilitar encolamiento de los oradores para poder exponer su charla.
- Mostrar modo proyección: Mientras orador expone, mostrar datos de su charla.
- Orador:
- Encolarse para exponer: Ponerse en la fila, para exponer su charla.
- Organizador:
- Finalizar Marketplace: Deshabilitar encolamiento para que no se puedan agendar más charlas.
- Orador:
- Ingresar con mail: Ingresar a la app solo con email y nombre.
- Organizador:
- Crear Open Space (modificado): Cargar estructura de slots (charla - otro).
- Gestionar charlas: Cargar, encolar y agendar charlas de cualquier orador.
- Intercambiar charlas: de cualquier orador a otra sala y horario.