{"id":28392746,"url":"https://github.com/andres-chirinos/appsscriptclassroomplus","last_synced_at":"2025-06-26T07:31:22.901Z","repository":{"id":275448108,"uuid":"926103256","full_name":"andres-chirinos/AppsScriptClassroomPlus","owner":"andres-chirinos","description":"ClassroomPlus es una serie de extensiones para la API de Google Classroom en Google Apps Script, diseñadas para facilitar la funcionalidad e integración dentro del ecosistema de Google Apps Script.","archived":false,"fork":false,"pushed_at":"2025-02-02T15:43:29.000Z","size":456,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-01T02:08:05.543Z","etag":null,"topics":["appsscript","classroomapi","javascript"],"latest_commit_sha":null,"homepage":"https://andres-chirinos.github.io/AppsScriptClassroomPlus/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/andres-chirinos.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-02-02T15:06:49.000Z","updated_at":"2025-02-03T04:23:59.000Z","dependencies_parsed_at":"2025-02-02T16:37:37.007Z","dependency_job_id":null,"html_url":"https://github.com/andres-chirinos/AppsScriptClassroomPlus","commit_stats":null,"previous_names":["andres-chirinos/appsscriptclassroomplus"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/andres-chirinos/AppsScriptClassroomPlus","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andres-chirinos%2FAppsScriptClassroomPlus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andres-chirinos%2FAppsScriptClassroomPlus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andres-chirinos%2FAppsScriptClassroomPlus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andres-chirinos%2FAppsScriptClassroomPlus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andres-chirinos","download_url":"https://codeload.github.com/andres-chirinos/AppsScriptClassroomPlus/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andres-chirinos%2FAppsScriptClassroomPlus/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262022141,"owners_count":23246265,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["appsscript","classroomapi","javascript"],"created_at":"2025-05-31T15:08:01.835Z","updated_at":"2025-06-26T07:31:22.894Z","avatar_url":"https://github.com/andres-chirinos.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ClassroomPlus\n\nClassroomPlus es una serie de extensiones para la API de Google Classroom en Google Apps Script, diseñadas para facilitar la funcionalidad e integración dentro del ecosistema de Google Apps Script.\n\n## Características\n\n- **Gestión de Cursos**: Listar todos los cursos, obtener cursos por enlace alternativo.\n- **Gestión de Estudiantes**: Listar todos los estudiantes de un curso, añadir y eliminar estudiantes en bloque.\n- **Gestión de Profesores**: Añadir profesores en bloque a un curso.\n- **Gestión de Temas**: Crear temas en bloque en un curso.\n- **Gestión de Invitaciones**: Crear y eliminar invitaciones en bloque para un curso.\n\n## Instalación\n\n1. Clona el repositorio:\n\n   ```sh\n   git clone https://github.com/tu-usuario/classroomplus.git\n   cd classroomplus\n   ```\n\n2. Instala las dependencias\n\n   ```sh\n   npm install\n   ```\n\n3. Configura `clasp` con tu script de Google Apps:\n   ```sh\n   clasp login\n   clasp push\n   ```\n\n## Uso\n### Listar todos los cursos\n```js\nconst courses = Classroom.Courses.listAll();\nconsole.log(courses);\n```\n### Obtener un curso por enlace alternativo\n```js\nconst course = Classroom.Courses.getByAlternateLink('https://classroom.google.com/c/ID_DEL_CURSO');\nconsole.log(course);\n```\n### Añadir estudiantes en bloque\n```js\nClassroom.Courses.Students.createBulk('courseId', ['userId1', 'userId2']);\n```\n### Eliminar estudiantes en bloque\n```js\nClassroom.Courses.Students.removeBulk('courseId', ['userId1', 'userId2']);\n```\n### Crear temas en bloque\n```js\nClassroom.Courses.Topics.createBulk('courseId', ['Topic1', 'Topic2']);\n```\n### Crear invitaciones en bloque\n```js\nClassroom.Invitations.createBulk('courseId', 'STUDENT', ['userId1', 'userId2']);\n```\n### Eliminar invitaciones en bloque\n```js\nClassroom.Invitations.removeBulk('courseId', 'STUDENT', ['userId1', 'userId2']);\n```\n\n## Pruebas\nPara ejecutar las pruebas, utiliza el siguiente comando:\n```sh\nnpm test\n```\n\n# Hoja de Ruta\n- [ ] Implementar gestión de cursos.\n- [ ] Implementar gestión de estudiantes.\n- [ ] Implementar gestión de profesores.\n- [ ] Implementar gestión de temas.\n- [ ] Implementar gestión de invitaciones.\n- [ ] Añadir más casos de prueba.\n- [ ] Mejorar la documentación.\n- [ ] Añadir soporte para más funcionalidades de la API de Google Classroom.\n\n# Contribuciones\nLas contribuciones son bienvenidas. Por favor, abre un issue o envía un pull request para discutir cualquier cambio que desees realizar.\n\n# Licencia\nEste proyecto está licenciado bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandres-chirinos%2Fappsscriptclassroomplus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandres-chirinos%2Fappsscriptclassroomplus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandres-chirinos%2Fappsscriptclassroomplus/lists"}