尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗Versió actual del paquet: 1.0.7, amb proves automàtiques
d'idiomes (cd src i npm run test:i18n; preparació en les notes de versió).
Imatge Docker i publicació en GitHub: documentació.
EduHoot és una aplicació tipus Kahoot per a l’aula: pots crear, importar i llançar qüestionaris amb imatges, vídeos i temps configurables. Admet CSV (inclosos els generats per IA) i importació de Kahoot públic. Està inspirada i reutilitza idees de llixhoot, llixhoot en lliurex i qplay.
Llicència: GNU Affero General Public License v3.0 (AGPL-3.0).
cd src && npm installsudo systemctl start mongod) o defineix MONGO_URL.node server/server.js.http://localhost:3000/create/.Configura un client OAuth 2.0 de Google amb la URL de retorn https://tu-dominio/api/auth/google/callback (o http://localhost:3000/api/auth/google/callback en local) i arranca el servidor amb:
GOOGLE_CLIENT_IDGOOGLE_CLIENT_SECRETPUBLIC_BASE_URL (recomanat en producció, per exemple https://tu-dominio)EDUTICTAC_COMMONS_URL (opcional): Commons al qual apunta el xip de compte. Per defecte https://commons.edutictac.es; en un Commons local, l'adreça pública del portal, per exemple http://edutictac.local:8082.El primer usuari que entra amb Google es crea com admin; els següents entren com editor. Si ja existeix un usuari amb el mateix email, se li enllaça Google i conserva el rol.
En la pantalla de create, el bloc d'alta ràpida mostra només el botó de Google. El botó Entrar/Compte continua obrint el modal d'accés amb email per a usuaris antics.
scripts/deploy.example.shscripts/deploy.sh, ompli les teues dades i no la puges al repo.DEPLOY_TARGET=usuari@vps:/var/www/eduhoot bash scripts/deploy.example.shDEPLOY_TARGET=usuari@vps:/var/www/eduhoot DEPLOY_REMOTE_CMD='cd /var/www/eduhoot/src && npm ci --omit=dev && pm2 restart eduhoot' bash scripts/deploy.example.shDRY_RUN=1 bash scripts/deploy.example.shVols saber amb detall com funciona cada funcionalitat (modes de joc, avanç de preguntes, informe CSV...)? Consulta ARCHITECTURE.md.
report.csv) més segur: només el host real el pot descarregar, amb neteja automàtica dels fitxers en disc encara que el servidor es reinicie./solo/?id=<quizId>/solo/?tag=musica/solo/?tags=musica,primaria/solo/?tags=musica,primaria&tagMode=allEduHoot es una aplicación tipo Kahoot para el aula: crea, importa y lanza quizzes con imágenes, vídeos y tiempos configurables. Admite CSV (también generados por IA) e importación de Kahoot público. Se inspira y reutiliza ideas de llixhoot, llixhoot en lliurex y qplay.
Licencia: GNU Affero General Public License v3.0 (AGPL-3.0).
cd src && npm installsudo systemctl start mongod) o configura MONGO_URL.node server/server.js.http://localhost:3000/create/.Configura un cliente OAuth 2.0 de Google con la URL de retorno https://tu-dominio/api/auth/google/callback (o http://localhost:3000/api/auth/google/callback en local) y arranca el servidor con:
GOOGLE_CLIENT_IDGOOGLE_CLIENT_SECRETPUBLIC_BASE_URL (recomendado en producción, por ejemplo https://tu-dominio)EDUTICTAC_COMMONS_URL (opcional): Commons al que apunta el chip de cuenta. Por defecto https://commons.edutictac.es; en un Commons local, la dirección pública del portal, por ejemplo http://edutictac.local:8082.El primer usuario que entra con Google se crea como admin; los siguientes entran como editor. Si ya existe un usuario con el mismo email, se le enlaza Google y conserva su rol.
En la pantalla de create, el bloque de alta rápida muestra solo el botón de Google. El botón Entrar/Cuenta sigue abriendo el modal de acceso con email para usuarios antiguos.
En producción hay una transición de 14 días desde el 12 de octubre de 2026. La fecha anunciada para dejar solo «Entrar con EduTicTac» era el 26 de octubre a las 19:00 (Europe/Madrid). La retirada automática y el recordatorio están desactivados mientras se valida la corrección del acceso real. Google seguirá disponible dentro de Authentik. Véase el plan de migración.
AUTHENTIK_MIGRATION_END permite fijar el fin de la transición en ISO UTC.
Al llegar al plazo se desactivan Google directo y las vías docentes locales,
y las sesiones HTTP antiguas requieren volver a entrar por Authentik.
La vinculación inicial requiere correo verificado; los accesos posteriores
usan issuer/sub y conservan la propiedad de los cuestionarios y el rol.
El grupo professorat se admite entre los grupos docentes.
EduHoot admite login OIDC con Authentik. Solo las identidades que incluyen un
rol docente en la claim configurada pueden iniciar sesión; el alumnado no puede
usar este login para crear o gestionar cuestionarios. Configura
AUTHENTIK_ISSUER, AUTHENTIK_CLIENT_ID, AUTHENTIK_CLIENT_SECRET y
AUTHENTIK_REDIRECT_URI (por defecto /api/auth/authentik/callback), y registra
esa URL en Authentik. La claim de roles/grupos es groups por defecto y se
puede cambiar con AUTHENTIK_ROLE_CLAIM; los roles aceptados se configuran con
AUTHENTIK_TEACHER_ROLES.
EduHoot puede validar al alumnado contra el servicio de identidad pseudónima de EduTicTac Commons y registrar la puntuación final en Commons.
Variables principales:
EDUTICTAC_ID_API_URL: URL interna de id-api, por ejemplo http://id-api:8005.EDUTICTAC_ID_AUTH_REQUIRED: 0 permite entrar con nombre corto o con código + PIN Commons; 1 obliga a usar código + PIN Commons.EDUTICTAC_ID_APP_TOKEN: token interno compartido con Commons para enviar resultados.En modo mixto (EDUTICTAC_ID_AUTH_REQUIRED=0), si el alumno rellena código + PIN Commons, EduHoot no debe pedir también nombre: usa el código público como alias corto. Si deja esos campos vacíos, puede jugar con nombre corto como antes.
Al terminar una partida, EduHoot envía resumen de puntuación a /api/apps/eduhoot/scores cuando EDUTICTAC_ID_API_URL y EDUTICTAC_ID_APP_TOKEN están configurados.
scripts/deploy.example.shscripts/deploy.sh, rellena tus datos y no la subas al repo.DEPLOY_TARGET=usuario@vps:/var/www/eduhoot bash scripts/deploy.example.shDEPLOY_TARGET=usuario@vps:/var/www/eduhoot DEPLOY_REMOTE_CMD='cd /var/www/eduhoot/src && npm ci --omit=dev && pm2 restart eduhoot' bash scripts/deploy.example.shDRY_RUN=1 bash scripts/deploy.example.shSTAGE_SETUP.mdscripts/deploy-stage.example.shinstall-files/service/eduhoot-stage-server.serviceinstall-files/nginx/eduhoot-stage.confinstall-files/stage.env.exampleFlujo recomendado:
STAGE_SETUP.md./opt/eduhoot-stage/src con scripts/deploy-stage.sh.stage.tu-dominio (flujos host/player, login y CSV).¿Quieres saber en detalle cómo funciona cada funcionalidad (modos de juego, avance de preguntas, informe CSV...)? Consulta ARCHITECTURE.md.
report.csv) más seguro: solo el host real puede descargarlo, con limpieza automática de los ficheros en disco aunque el servidor se reinicie./solo/?id=<quizId>/solo/?tag=musica/solo/?tags=musica,primaria/solo/?tags=musica,primaria&tagMode=allEduHoot is a Kahoot-like app for classrooms: create, import, and launch quizzes with images, videos, and configurable timers. Supports CSV (including AI-generated) and public Kahoot import. It’s inspired by and reuses ideas from llixhoot, llixhoot on lliurex, and qplay.
License: GNU Affero General Public License v3.0 (AGPL-3.0).
cd src && npm installsudo systemctl start mongod) or set MONGO_URL.node server/server.js.http://localhost:3000/create/.Create a Google OAuth 2.0 client with the redirect URL https://your-domain/api/auth/google/callback (or http://localhost:3000/api/auth/google/callback locally) and start the server with:
GOOGLE_CLIENT_IDGOOGLE_CLIENT_SECRETPUBLIC_BASE_URL (recommended in production, for example https://your-domain)EDUTICTAC_COMMONS_URL (optional): Commons the account chip points to. Defaults to https://commons.edutictac.es; in a local Commons, the portal's public address, for example http://edutictac.local:8082.The first Google user becomes admin; later users become editor. If a user with the same email already exists, Google is linked to that account and the current role is preserved.
scripts/deploy.example.shscripts/deploy.sh, fill your real values, and keep it out of the repo.DEPLOY_TARGET=user@vps:/var/www/eduhoot bash scripts/deploy.example.shDEPLOY_TARGET=user@vps:/var/www/eduhoot DEPLOY_REMOTE_CMD='cd /var/www/eduhoot/src && npm ci --omit=dev && pm2 restart eduhoot' bash scripts/deploy.example.shDRY_RUN=1 bash scripts/deploy.example.shSTAGE_SETUP.mdscripts/deploy-stage.example.shinstall-files/service/eduhoot-stage-server.serviceinstall-files/nginx/eduhoot-stage.confinstall-files/stage.env.exampleRecommended flow:
STAGE_SETUP.md./opt/eduhoot-stage/src via scripts/deploy-stage.sh.stage.your-domain (host/player flows, login, CSV import).Want the full details on how each feature works (game modes, question advancing, CSV report...)? See ARCHITECTURE.md.
report.csv): only the real host can download it, with automatic cleanup of the files on disk even if the server restarts./solo/?id=<quizId>/solo/?tag=music/solo/?tags=music,primary/solo/?tags=music,primary&tagMode=all