npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

create-openclass-uniminuto

v1.6.13

Published

Creador de proyectos Open Class UNIMINUTO basados en Slidev, con generación incremental por semanas, actualización de tema y GitHub Pages.

Readme

create-openclass-uniminuto

Creador de proyectos Open Class UNIMINUTO basados en Slidev, con estructura institucional, generación progresiva de 8 semanas, exportación de recursos y despliegue automático en GitHub Pages.

Este repositorio cumple dos funciones:

  1. Publicar un paquete npm llamado create-openclass-uniminuto.
  2. Servir como base para mantener una plantilla reutilizable de cursos Open Class.

Flujo recomendado cuando el repositorio ya existe en GitHub

Este es el flujo pensado para la opción C: primero creas el repositorio en GitHub y luego generas el curso dentro de ese repositorio clonado.

git clone https://github.com/herrerawilliamh/openclass-iot.git
cd openclass-iot
npm create openclass-uniminuto@latest . -- --iot
npm install
npm run semana -- 1
npm run dev

Si el repositorio no está completamente vacío y quieres reemplazar archivos existentes de la plantilla, usa --force:

npm create openclass-uniminuto@latest . -- --iot --force

Después sincronizas con GitHub mediante Git, no mediante npm:

git add -A
git commit -m "Configura Open Class IoT"
git push

npm create genera o completa el proyecto; git push sincroniza el repositorio y activa GitHub Actions/GitHub Pages.

1. Nombres recomendados

Paquete npm

"name": "create-openclass-uniminuto"

Uso esperado después de publicarlo:

npm create openclass-uniminuto@latest openclass-iot

Con configuración inicial de IoT:

npm create openclass-uniminuto@latest openclass-iot -- --iot

La relación es esta:

Paquete publicado: create-openclass-uniminuto
Comando de uso  : npm create openclass-uniminuto@latest nombre-del-curso

Repositorio GitHub del generador npm

herrerawilliamh/create-openclass-uniminuto

Repositorio GitHub de la plantilla visual

herrerawilliamh/openclass-uniminuto-template

Este segundo repositorio puede marcarse como Template repository en GitHub para crear cursos desde el botón Use this template.

Repositorios de cursos generados

herrerawilliamh/openclass-iot
herrerawilliamh/openclass-bigdata
herrerawilliamh/openclass-gestion-seguridad
herrerawilliamh/openclass-percepcion-computacional

URL esperada de GitHub Pages:

https://herrerawilliamh.github.io/openclass-iot/

2. Estructura que genera el paquete

mi-openclass/
├─ .github/
│  └─ workflows/
│     └─ deploy.yml
├─ config/
│  ├─ openclass.config.iot-ejemplo.json
│  └─ openclass.config.iot-desde-openclass-iot.json
├─ plantillas/
│  ├─ launcher.md
│  └─ semana.md
├─ public/
│  ├─ descargas/
│  ├─ fondos/
│  ├─ imagenes/
│  └─ videos/
├─ scripts/
│  ├─ generar-desde-config.mjs
│  ├─ nuevo-curso.mjs
│  ├─ semana.mjs
│  ├─ preparar-github-pages.mjs
│  ├─ build-site.mjs
│  ├─ export-downloads.mjs
│  └─ decks.mjs
├─ semanas/
├─ openclass.config.json
├─ slides.md
├─ package.json
└─ README.md

3. Tres formas de trabajar

Opción A · Crear curso desde npm

Útil cuando quieres trabajar desde consola y generar todo el proyecto localmente.

npm create openclass-uniminuto@latest openclass-iot -- --iot
cd openclass-iot
npm install
npm run semana -- 1
npm run dev

Luego creas el repositorio en GitHub y subes el proyecto.


Opción B · Crear curso desde GitHub Template

Útil cuando quieres crear el repositorio primero desde GitHub.

  1. Entra al repositorio openclass-uniminuto-template.
  2. Clic en Use this template.
  3. Crea un repositorio nuevo, por ejemplo openclass-iot.
  4. Clónalo en tu equipo.
  5. Ejecuta los comandos del curso.
git clone https://github.com/herrerawilliamh/openclass-iot.git
cd openclass-iot
npm install
npm run nuevo
npm run semana -- 1
npm run dev

Opción C · Crear repo en GitHub y generar curso en local

Esta es una opción híbrida y recomendada cuando quieres separar el repositorio remoto de la generación local.

Primero creas en GitHub el repositorio openclass-iot. Puede ser:

  • desde el botón Use this template;
  • o como repositorio vacío.

Luego, en local, tienes dos posibilidades.

C1. Si el repositorio fue creado desde la plantilla

git clone https://github.com/herrerawilliamh/openclass-iot.git
cd openclass-iot
npm install
npm run nuevo
npm run semana -- 1
npm run dev

Después subes los cambios:

git add -A
git commit -m "Generar semana 1"
git push

C2. Si el repositorio en GitHub está vacío

npm create openclass-uniminuto@latest openclass-iot -- --iot
cd openclass-iot
npm install
npm run semana -- 1
npm run dev

Luego conectas ese proyecto local con el repositorio remoto:

git init
git branch -M main
git add -A
git commit -m "Publicación inicial Open Class IoT"
git remote add origin https://github.com/herrerawilliamh/openclass-iot.git
git push -u origin main

Ambas rutas llevan al mismo resultado: un curso Open Class versionado en GitHub y publicable en GitHub Pages.


4. Publicar este generador en npm

Desde la carpeta de este paquete:

npm login
npm whoami
npm pack --dry-run
npm publish --access public

Después de publicar, prueba desde otra carpeta:

npm create openclass-uniminuto@latest prueba-openclass
cd prueba-openclass
npm install
npm run semana -- 1
npm run dev

5. Subir este generador a GitHub

Crea el repositorio:

herrerawilliamh/create-openclass-uniminuto

Luego ejecuta:

git init
git branch -M main
git add -A
git commit -m "Versión inicial del generador Open Class UNIMINUTO"
git remote add origin https://github.com/herrerawilliamh/create-openclass-uniminuto.git
git push -u origin main

6. Crear el repositorio plantilla de GitHub

El repositorio plantilla debe llamarse preferiblemente:

openclass-uniminuto-template

Para crearlo, puedes copiar el contenido de la carpeta template/ como raíz de un nuevo repositorio:

mkdir openclass-uniminuto-template
cp -R template/. openclass-uniminuto-template/
cd openclass-uniminuto-template

git init
git branch -M main
git add -A
git commit -m "Plantilla Open Class UNIMINUTO"
git remote add origin https://github.com/herrerawilliamh/openclass-uniminuto-template.git
git push -u origin main

En GitHub activa:

Settings → General → Template repository

Con eso podrás crear cursos desde:

Use this template → Create a new repository

7. Generar semanas una a una

Cada curso tiene 8 semanas. El comando principal es:

npm run semana -- 1

Ejemplos:

npm run semana -- 2 --title "Arquitectura física de soluciones IoT" --date "Junio 15 de 2026"
npm run semana -- 3 --title "Protocolos de comunicación" --theme "MQTT, HTTP y comunicación entre dispositivos"
npm run semana -- 4 --title "Integración con plataformas en la nube" --activity "Laboratorio guiado" --duration "120 minutos"

Activar solo una semana y desactivar las demás:

npm run semana -- 5 --only

Regenerar y sobrescribir el contenido interno de una semana:

npm run semana -- 6 --force-content

El comando semana actualiza:

openclass.config.json
slides.md
scripts/decks.mjs
package.json
curso_semanaN.md
semanas/curso_semanaN.md

Por defecto conserva el contenido ya editado en semanas/*.md.


8. GitHub Pages

Cada curso generado incluye:

.github/workflows/deploy.yml

El workflow realiza este proceso:

  1. Clona el repositorio.
  2. Configura GitHub Pages.
  3. Instala Node.js.
  4. Ejecuta npm ci.
  5. Instala Chromium para exportar PDF/PPTX con Slidev.
  6. Ejecuta npm run pages:build.
  7. Sube dist como artefacto de GitHub Pages.
  8. Publica el sitio.

En cada repositorio de curso debes activar GitHub Pages así:

Settings → Pages → Build and deployment → Source → GitHub Actions

Después, cada git push a main publicará el sitio automáticamente.


9. Flujo semanal sugerido para un curso

Semana 1:

npm run semana -- 1 --title "Introducción al curso"
git add -A
git commit -m "Agregar semana 1"
git push

Semana 2:

npm run semana -- 2 --title "Tema de la semana 2"
git add -A
git commit -m "Agregar semana 2"
git push

Repite el proceso hasta la semana 8.


10. Actualizar el generador en npm

Cambio pequeño:

npm version patch
npm publish

Cambio funcional compatible:

npm version minor
npm publish

Cambio mayor:

npm version major
npm publish

11. Convenciones recomendadas

| Curso | Repositorio GitHub | Nombre corto sugerido | |---|---|---| | Internet de las Cosas | openclass-iot | iot | | Big Data | openclass-bigdata | bigdata | | Gestión de Seguridad de la Información | openclass-gestion-seguridad | gsi | | Percepción Computacional | openclass-percepcion-computacional | percepcioncomputacional |


12. Resumen operativo

Para publicar el generador:

npm publish --access public

Para crear un curso desde npm:

npm create openclass-uniminuto@latest openclass-iot -- --iot

Para crear un curso desde GitHub:

Use this template → openclass-iot

Para generar una semana:

npm run semana -- 1

Para publicar en GitHub Pages:

git add -A
git commit -m "Actualizar Open Class"
git push