create-openclass-uniminuto 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +480 -0
- package/bin/create-openclass-uniminuto.mjs +142 -0
- package/package.json +39 -0
- package/template/.github/workflows/deploy.yml +64 -0
- package/template/README.md +326 -0
- package/template/config/openclass.config.iot-desde-openclass-iot.json +77 -0
- package/template/config/openclass.config.iot-ejemplo.json +81 -0
- package/template/demo_semana1.md +11 -0
- package/template/demo_semana2.md +11 -0
- package/template/demo_semana3.md +11 -0
- package/template/demo_semana4.md +11 -0
- package/template/demo_semana5.md +11 -0
- package/template/demo_semana6.md +11 -0
- package/template/demo_semana7.md +11 -0
- package/template/demo_semana8.md +11 -0
- package/template/ejemplos/iot-semanas-1-a-3/raiz/iot_semana1.md +12 -0
- package/template/ejemplos/iot-semanas-1-a-3/raiz/iot_semana2.md +12 -0
- package/template/ejemplos/iot-semanas-1-a-3/raiz/iot_semana3.md +12 -0
- package/template/ejemplos/iot-semanas-1-a-3/raiz/iot_semana4.md +12 -0
- package/template/ejemplos/iot-semanas-1-a-3/raiz/iot_semana5.md +12 -0
- package/template/ejemplos/iot-semanas-1-a-3/raiz/iot_semana6.md +12 -0
- package/template/ejemplos/iot-semanas-1-a-3/raiz/iot_semana7.md +12 -0
- package/template/ejemplos/iot-semanas-1-a-3/raiz/iot_semana8.md +12 -0
- package/template/ejemplos/iot-semanas-1-a-3/raiz/slides.md +154 -0
- package/template/ejemplos/iot-semanas-1-a-3/semanas/iot_semana1.md +846 -0
- package/template/ejemplos/iot-semanas-1-a-3/semanas/iot_semana2.md +1040 -0
- package/template/ejemplos/iot-semanas-1-a-3/semanas/iot_semana3.md +1071 -0
- package/template/openclass.config.json +79 -0
- package/template/package-lock.json +11568 -0
- package/template/package.json +61 -0
- package/template/plantillas/launcher.md +11 -0
- package/template/plantillas/semana.md +177 -0
- package/template/public/descargas/.gitkeep +0 -0
- package/template/public/favicon.png +0 -0
- package/template/public/fondos/slide-01-portada.png +0 -0
- package/template/public/fondos/slide-02-titulo.png +0 -0
- package/template/public/fondos/slide-03-imagen-izquierda.png +0 -0
- package/template/public/fondos/slide-04-imagen-derecha.png +0 -0
- package/template/public/fondos/slide-05-template.png +0 -0
- package/template/public/fondos/slide-06-cierre.png +0 -0
- package/template/public/imagenes/.gitkeep +0 -0
- package/template/public/videos/.gitkeep +0 -0
- package/template/scripts/build-incremental.mjs +33 -0
- package/template/scripts/build-site.mjs +33 -0
- package/template/scripts/decks.mjs +29 -0
- package/template/scripts/dev-all.mjs +37 -0
- package/template/scripts/export-downloads.mjs +53 -0
- package/template/scripts/export-incremental.mjs +49 -0
- package/template/scripts/generar-desde-config.mjs +279 -0
- package/template/scripts/nuevo-curso.mjs +104 -0
- package/template/scripts/preparar-github-pages.mjs +52 -0
- package/template/scripts/publicar.mjs +36 -0
- package/template/scripts/semana.mjs +122 -0
- package/template/scripts/zip-template.mjs +70 -0
- package/template/semanas/demo_semana1.md +177 -0
- package/template/semanas/demo_semana2.md +177 -0
- package/template/semanas/demo_semana3.md +177 -0
- package/template/semanas/demo_semana4.md +177 -0
- package/template/semanas/demo_semana5.md +177 -0
- package/template/semanas/demo_semana6.md +177 -0
- package/template/semanas/demo_semana7.md +177 -0
- package/template/semanas/demo_semana8.md +177 -0
- package/template/setup/shiki.ts +10 -0
- package/template/slides.md +65 -0
- package/template/snippets/external.ts +12 -0
- package/template/theme/uniminuto/README-AutoFit.md +28 -0
- package/template/theme/uniminuto/components/AutoFitText.vue +159 -0
- package/template/theme/uniminuto/components/Counter.vue +37 -0
- package/template/theme/uniminuto/components/FontToggle.vue +42 -0
- package/template/theme/uniminuto/layouts/slide-01-portada.vue +119 -0
- package/template/theme/uniminuto/layouts/slide-02-titulo.vue +63 -0
- package/template/theme/uniminuto/layouts/slide-03-imagen-izquierda.vue +110 -0
- package/template/theme/uniminuto/layouts/slide-04-imagen-derecha.vue +110 -0
- package/template/theme/uniminuto/layouts/slide-05-titulo-superior-texto-derecha.vue +104 -0
- package/template/theme/uniminuto/layouts/slide-06-titulo-superior-texto-izquierda.vue +109 -0
- package/template/theme/uniminuto/layouts/slide-07-multimedia-con-titulo.vue +87 -0
- package/template/theme/uniminuto/layouts/slide-08-titulo-texto.vue +78 -0
- package/template/theme/uniminuto/layouts/slide-09-objetivos.vue +77 -0
- package/template/theme/uniminuto/layouts/slide-10-titulo-dos-columnas.vue +89 -0
- package/template/theme/uniminuto/layouts/slide-11-dos-titulos-dos-columnas.vue +98 -0
- package/template/theme/uniminuto/layouts/slide-12-cierre.vue +27 -0
- package/template/theme/uniminuto/layouts/slide-codigo.vue +133 -0
- package/template/theme/uniminuto/package.json +13 -0
- package/template/theme/uniminuto/styles/base.css +109 -0
- package/template/theme/uniminuto/styles/index.ts +11 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
name: Deploy Open Class to GitHub Pages
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- main
|
|
7
|
+
workflow_dispatch:
|
|
8
|
+
|
|
9
|
+
permissions:
|
|
10
|
+
contents: read
|
|
11
|
+
pages: write
|
|
12
|
+
id-token: write
|
|
13
|
+
|
|
14
|
+
concurrency:
|
|
15
|
+
group: pages
|
|
16
|
+
cancel-in-progress: false
|
|
17
|
+
|
|
18
|
+
jobs:
|
|
19
|
+
build:
|
|
20
|
+
name: Build Open Class
|
|
21
|
+
runs-on: ubuntu-latest
|
|
22
|
+
|
|
23
|
+
env:
|
|
24
|
+
SITE_BASE: /${{ github.event.repository.name }}/
|
|
25
|
+
|
|
26
|
+
steps:
|
|
27
|
+
- name: Checkout repository
|
|
28
|
+
uses: actions/checkout@v4
|
|
29
|
+
|
|
30
|
+
- name: Configure GitHub Pages
|
|
31
|
+
uses: actions/configure-pages@v5
|
|
32
|
+
|
|
33
|
+
- name: Setup Node.js
|
|
34
|
+
uses: actions/setup-node@v4
|
|
35
|
+
with:
|
|
36
|
+
node-version: 22
|
|
37
|
+
cache: npm
|
|
38
|
+
|
|
39
|
+
- name: Install dependencies
|
|
40
|
+
run: npm ci
|
|
41
|
+
|
|
42
|
+
- name: Install Chromium for Slidev export
|
|
43
|
+
run: npx playwright install chromium --with-deps
|
|
44
|
+
|
|
45
|
+
- name: Generate and build Open Class
|
|
46
|
+
run: npm run pages:build
|
|
47
|
+
|
|
48
|
+
- name: Upload GitHub Pages artifact
|
|
49
|
+
uses: actions/upload-pages-artifact@v3
|
|
50
|
+
with:
|
|
51
|
+
path: dist
|
|
52
|
+
|
|
53
|
+
deploy:
|
|
54
|
+
name: Deploy GitHub Pages
|
|
55
|
+
environment:
|
|
56
|
+
name: github-pages
|
|
57
|
+
url: ${{ steps.deployment.outputs.page_url }}
|
|
58
|
+
runs-on: ubuntu-latest
|
|
59
|
+
needs: build
|
|
60
|
+
|
|
61
|
+
steps:
|
|
62
|
+
- name: Deploy to GitHub Pages
|
|
63
|
+
id: deployment
|
|
64
|
+
uses: actions/deploy-pages@v4
|
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
# Open Class UNIMINUTO · Slidev
|
|
2
|
+
|
|
3
|
+
Proyecto generado con `create-openclass-uniminuto` o creado desde la plantilla `openclass-uniminuto-template`.
|
|
4
|
+
|
|
5
|
+
Este curso está diseñado para organizar una Open Class de **8 semanas**, con generación progresiva de cada semana, portal principal, lanzadores individuales, exportación de PDF/PPTX y publicación automática en **GitHub Pages**.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
## Crear el curso dentro de un repositorio ya creado en GitHub
|
|
11
|
+
|
|
12
|
+
Si primero creaste el repositorio en GitHub, clónalo y aplica la plantilla desde npm dentro de la carpeta del repositorio:
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
git clone https://github.com/herrerawilliamh/openclass-iot.git
|
|
16
|
+
cd openclass-iot
|
|
17
|
+
npm create openclass-uniminuto@latest . -- --iot
|
|
18
|
+
npm install
|
|
19
|
+
npm run semana -- 1
|
|
20
|
+
npm run dev
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Si el repositorio ya tenía archivos iniciales y deseas reemplazarlos por los de la plantilla:
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
npm create openclass-uniminuto@latest . -- --iot --force
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
La sincronización con GitHub se hace después con Git:
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
git add -A
|
|
33
|
+
git commit -m "Configura Open Class"
|
|
34
|
+
git push
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
## 1. Primer uso
|
|
39
|
+
|
|
40
|
+
Instala dependencias:
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
npm install
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Configura el curso desde consola:
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
npm run nuevo
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Genera la primera semana:
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
npm run semana -- 1
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Ejecuta el portal principal:
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
npm run dev
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Una semana específica se abre con:
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
npm run dev:s1
|
|
68
|
+
npm run dev:s2
|
|
69
|
+
npm run dev:s3
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## 2. Tres formas de crear este curso
|
|
75
|
+
|
|
76
|
+
### Opción A · Desde npm
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
npm create openclass-uniminuto@latest openclass-iot -- --iot
|
|
80
|
+
cd openclass-iot
|
|
81
|
+
npm install
|
|
82
|
+
npm run semana -- 1
|
|
83
|
+
npm run dev
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
### Opción B · Desde GitHub Template
|
|
87
|
+
|
|
88
|
+
1. Entra al repositorio `openclass-uniminuto-template`.
|
|
89
|
+
2. Clic en **Use this template**.
|
|
90
|
+
3. Crea un repositorio nuevo, por ejemplo `openclass-iot`.
|
|
91
|
+
4. Clónalo.
|
|
92
|
+
5. Ejecuta los comandos del curso.
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
git clone https://github.com/herrerawilliamh/openclass-iot.git
|
|
96
|
+
cd openclass-iot
|
|
97
|
+
npm install
|
|
98
|
+
npm run nuevo
|
|
99
|
+
npm run semana -- 1
|
|
100
|
+
npm run dev
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### Opción C · Repo creado en GitHub y curso generado en local
|
|
104
|
+
|
|
105
|
+
Esta opción combina GitHub y npm.
|
|
106
|
+
|
|
107
|
+
#### Si el repositorio fue creado desde plantilla
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
git clone https://github.com/herrerawilliamh/openclass-iot.git
|
|
111
|
+
cd openclass-iot
|
|
112
|
+
npm install
|
|
113
|
+
npm run nuevo
|
|
114
|
+
npm run semana -- 1
|
|
115
|
+
npm run dev
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
Luego:
|
|
119
|
+
|
|
120
|
+
```bash
|
|
121
|
+
git add -A
|
|
122
|
+
git commit -m "Generar semana 1"
|
|
123
|
+
git push
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
#### Si el repositorio está vacío
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
npm create openclass-uniminuto@latest openclass-iot -- --iot
|
|
130
|
+
cd openclass-iot
|
|
131
|
+
npm install
|
|
132
|
+
npm run semana -- 1
|
|
133
|
+
npm run dev
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
Después conecta el remoto:
|
|
137
|
+
|
|
138
|
+
```bash
|
|
139
|
+
git init
|
|
140
|
+
git branch -M main
|
|
141
|
+
git add -A
|
|
142
|
+
git commit -m "Publicación inicial Open Class"
|
|
143
|
+
git remote add origin https://github.com/herrerawilliamh/openclass-iot.git
|
|
144
|
+
git push -u origin main
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
## 3. Generar semanas una a una
|
|
150
|
+
|
|
151
|
+
El curso siempre se organiza en **8 semanas**. Puedes generarlas progresivamente.
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
npm run semana -- 1
|
|
155
|
+
npm run semana -- 2 --title "Título de la semana 2" --date "Junio 15 de 2026"
|
|
156
|
+
npm run semana -- 3 --title "Título de la semana 3" --theme "Tema central"
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
El comando `semana` actualiza automáticamente:
|
|
160
|
+
|
|
161
|
+
```text
|
|
162
|
+
openclass.config.json
|
|
163
|
+
slides.md
|
|
164
|
+
scripts/decks.mjs
|
|
165
|
+
package.json
|
|
166
|
+
curso_semanaN.md
|
|
167
|
+
semanas/curso_semanaN.md
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
El contenido ya editado dentro de `semanas/*.md` se conserva. Solo se sobrescribe si usas:
|
|
171
|
+
|
|
172
|
+
```bash
|
|
173
|
+
npm run semana -- 4 --force-content
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
Para activar únicamente una semana:
|
|
177
|
+
|
|
178
|
+
```bash
|
|
179
|
+
npm run semana -- 4 --only
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
---
|
|
183
|
+
|
|
184
|
+
## 4. Editar contenido académico
|
|
185
|
+
|
|
186
|
+
El contenido real de cada presentación está en:
|
|
187
|
+
|
|
188
|
+
```text
|
|
189
|
+
semanas/
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
Ejemplo:
|
|
193
|
+
|
|
194
|
+
```text
|
|
195
|
+
semanas/iot_semana1.md
|
|
196
|
+
semanas/iot_semana2.md
|
|
197
|
+
semanas/iot_semana3.md
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
Los archivos de la raíz como `iot_semana1.md` funcionan como lanzadores. Normalmente no debes editarlos manualmente.
|
|
201
|
+
|
|
202
|
+
---
|
|
203
|
+
|
|
204
|
+
## 5. Recursos del curso
|
|
205
|
+
|
|
206
|
+
Usa estas carpetas:
|
|
207
|
+
|
|
208
|
+
```text
|
|
209
|
+
public/imagenes/ imágenes del curso
|
|
210
|
+
public/videos/ videos y recursos audiovisuales
|
|
211
|
+
public/descargas/ PDF, PPTX u otros descargables
|
|
212
|
+
public/fondos/ fondos institucionales
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
## 6. Construcción local
|
|
218
|
+
|
|
219
|
+
Construir el portal y las semanas activas:
|
|
220
|
+
|
|
221
|
+
```bash
|
|
222
|
+
npm run pages:build
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
Previsualizar la versión estática:
|
|
226
|
+
|
|
227
|
+
```bash
|
|
228
|
+
npm run pages:preview
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
Revisar configuración para GitHub Pages:
|
|
232
|
+
|
|
233
|
+
```bash
|
|
234
|
+
npm run pages:check
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
---
|
|
238
|
+
|
|
239
|
+
## 7. Publicar en GitHub Pages
|
|
240
|
+
|
|
241
|
+
Este proyecto ya incluye:
|
|
242
|
+
|
|
243
|
+
```text
|
|
244
|
+
.github/workflows/deploy.yml
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
El workflow construye el sitio y publica la carpeta `dist` en GitHub Pages.
|
|
248
|
+
|
|
249
|
+
En GitHub configura:
|
|
250
|
+
|
|
251
|
+
```text
|
|
252
|
+
Settings → Pages → Build and deployment → Source → GitHub Actions
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
Luego sube cambios:
|
|
256
|
+
|
|
257
|
+
```bash
|
|
258
|
+
git add -A
|
|
259
|
+
git commit -m "Actualizar Open Class"
|
|
260
|
+
git push
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
Cada `push` a `main` construirá y publicará el sitio automáticamente.
|
|
264
|
+
|
|
265
|
+
La URL esperada será:
|
|
266
|
+
|
|
267
|
+
```text
|
|
268
|
+
https://herrerawilliamh.github.io/NOMBRE-DEL-REPOSITORIO/
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
Ejemplo:
|
|
272
|
+
|
|
273
|
+
```text
|
|
274
|
+
https://herrerawilliamh.github.io/openclass-iot/
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
---
|
|
278
|
+
|
|
279
|
+
## 8. Flujo semanal sugerido
|
|
280
|
+
|
|
281
|
+
Semana 1:
|
|
282
|
+
|
|
283
|
+
```bash
|
|
284
|
+
npm run semana -- 1 --title "Introducción al curso"
|
|
285
|
+
git add -A
|
|
286
|
+
git commit -m "Agregar semana 1"
|
|
287
|
+
git push
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
Semana 2:
|
|
291
|
+
|
|
292
|
+
```bash
|
|
293
|
+
npm run semana -- 2 --title "Tema de la semana 2"
|
|
294
|
+
git add -A
|
|
295
|
+
git commit -m "Agregar semana 2"
|
|
296
|
+
git push
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
Repite el proceso hasta la semana 8.
|
|
300
|
+
|
|
301
|
+
---
|
|
302
|
+
|
|
303
|
+
## 9. Comandos útiles
|
|
304
|
+
|
|
305
|
+
| Comando | Uso |
|
|
306
|
+
|---|---|
|
|
307
|
+
| `npm run nuevo` | Configura un curso desde consola |
|
|
308
|
+
| `npm run semana -- 1` | Genera o activa la semana 1 |
|
|
309
|
+
| `npm run dev` | Abre el portal principal |
|
|
310
|
+
| `npm run dev:s1` | Abre la semana 1 |
|
|
311
|
+
| `npm run pages:check` | Revisa configuración para GitHub Pages |
|
|
312
|
+
| `npm run pages:build` | Construye el sitio estático y exporta descargas |
|
|
313
|
+
| `npm run pages:preview` | Previsualiza la versión publicada |
|
|
314
|
+
| `npm run publicar` | Ejecuta exportaciones y construcción local |
|
|
315
|
+
|
|
316
|
+
---
|
|
317
|
+
|
|
318
|
+
## 10. Archivos clave
|
|
319
|
+
|
|
320
|
+
```text
|
|
321
|
+
openclass.config.json configuración general del curso
|
|
322
|
+
slides.md portal principal
|
|
323
|
+
semanas/ contenido académico real
|
|
324
|
+
scripts/decks.mjs listado de presentaciones activas
|
|
325
|
+
.github/workflows/deploy.yml despliegue automático en GitHub Pages
|
|
326
|
+
```
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
{
|
|
2
|
+
"course": {
|
|
3
|
+
"shortName": "iot",
|
|
4
|
+
"fullName": "Internet de las cosas",
|
|
5
|
+
"year": "2026",
|
|
6
|
+
"description": "El curso Internet de las cosas introduce al estudiante en el diseño, comprensión y aplicación de sistemas conectados capaces de capturar datos del entorno físico, procesarlos y generar decisiones útiles. A lo largo del curso se estudian sensores, actuadores, microcontroladores, conectividad, procesamiento en la nube, edge computing, seguridad, interoperabilidad, eficiencia energética y aplicaciones en contextos industriales, empresariales, educativos, agrícolas, domésticos y urbanos.",
|
|
7
|
+
"openClassLabel": "Open Class"
|
|
8
|
+
},
|
|
9
|
+
"generation": {
|
|
10
|
+
"weeksTotal": 8,
|
|
11
|
+
"activeWeeks": [1, 2, 3, 4, 5, 6],
|
|
12
|
+
"exportPortal": true,
|
|
13
|
+
"overwriteLaunchers": true,
|
|
14
|
+
"overwritePortal": true,
|
|
15
|
+
"overwriteDecks": true,
|
|
16
|
+
"overwritePackageScripts": true,
|
|
17
|
+
"overwriteWeekContent": false
|
|
18
|
+
},
|
|
19
|
+
"weeks": [
|
|
20
|
+
{
|
|
21
|
+
"number": 1,
|
|
22
|
+
"title": "Generalidades de IoT",
|
|
23
|
+
"date": "Mayo 04 de 2026",
|
|
24
|
+
"centralTheme": "Introducción al Internet de las cosas, componentes, ecosistema conectado y recorrido del dato desde el mundo físico hasta una decisión digital.",
|
|
25
|
+
"activity": "Actividad de reconocimiento conceptual y práctica guiada con ESP32 y MicroPython en Wokwi."
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"number": 2,
|
|
29
|
+
"title": "Estructuras Tecnológicas que soportan IoT",
|
|
30
|
+
"date": "Mayo 11 de 2026",
|
|
31
|
+
"centralTheme": "Arquitectura IoT, sensores, actuadores, conectividad, edge, fog, cloud, estándares, seguridad y resiliencia.",
|
|
32
|
+
"activity": "Mapa rápido de una solución IoT y análisis de sus componentes principales."
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"number": 3,
|
|
36
|
+
"title": "Seguridad y riesgos para sistemas IoT",
|
|
37
|
+
"date": "Mayo 18 de 2026",
|
|
38
|
+
"centralTheme": "Riesgos, vulnerabilidades, controles, monitoreo, privacidad y buenas prácticas para dispositivos y plataformas IoT.",
|
|
39
|
+
"activity": "Simulación de alertas, clasificación de riesgos y propuesta de controles básicos."
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"number": 4,
|
|
43
|
+
"title": "Programación de sistemas IoT",
|
|
44
|
+
"date": "Mayo 25 de 2026",
|
|
45
|
+
"centralTheme": "Desarrollo y programación de soluciones IoT mediante microcontroladores, lenguajes, protocolos, servicios y prácticas de seguridad.",
|
|
46
|
+
"activity": "Diseño breve de una idea IoT y práctica guiada con ESP32, sensor, lógica de decisión y simulación."
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"number": 5,
|
|
50
|
+
"title": "Diseño de Hardware para IoT",
|
|
51
|
+
"date": "Junio 01 de 2026",
|
|
52
|
+
"centralTheme": "Selección de sensores, microcontroladores, comunicación, energía, protección física, mantenimiento y restricciones reales del hardware IoT.",
|
|
53
|
+
"activity": "Análisis de decisiones de hardware para un dispositivo IoT de monitoreo ambiental."
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"number": 6,
|
|
57
|
+
"title": "Internet industrial de las cosas",
|
|
58
|
+
"date": "Junio 08 de 2026",
|
|
59
|
+
"centralTheme": "Aplicación del IoT en entornos industriales mediante sensores, máquinas, sistemas de control, analítica, productividad, eficiencia y sostenibilidad.",
|
|
60
|
+
"activity": "Diagnóstico rápido de datos industriales críticos y relación con decisiones operativas."
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"number": 7,
|
|
64
|
+
"title": "Inteligencia artificial y aprendizaje automático",
|
|
65
|
+
"date": "2026",
|
|
66
|
+
"centralTheme": "Uso de analítica, inteligencia artificial y aprendizaje automático sobre datos provenientes de sistemas IoT.",
|
|
67
|
+
"activity": "Actividad de análisis de datos IoT y posibles decisiones predictivas."
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"number": 8,
|
|
71
|
+
"title": "Impactos del entorno en IoT",
|
|
72
|
+
"date": "2026",
|
|
73
|
+
"centralTheme": "Impactos técnicos, sociales, éticos, ambientales, económicos y organizacionales del Internet de las cosas.",
|
|
74
|
+
"activity": "Reflexión aplicada sobre beneficios, riesgos y criterios de implementación responsable."
|
|
75
|
+
}
|
|
76
|
+
]
|
|
77
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
{
|
|
2
|
+
"course": {
|
|
3
|
+
"shortName": "iot",
|
|
4
|
+
"fullName": "Internet de las cosas",
|
|
5
|
+
"year": "2026",
|
|
6
|
+
"description": "El curso Internet de las cosas introduce al estudiante en el diseño, comprensión y aplicación de sistemas conectados capaces de capturar datos del entorno físico, procesarlos y generar decisiones útiles.",
|
|
7
|
+
"openClassLabel": "Open Class"
|
|
8
|
+
},
|
|
9
|
+
"generation": {
|
|
10
|
+
"weeksTotal": 8,
|
|
11
|
+
"activeWeeks": [
|
|
12
|
+
1,
|
|
13
|
+
2,
|
|
14
|
+
3
|
|
15
|
+
],
|
|
16
|
+
"exportPortal": false,
|
|
17
|
+
"overwriteLaunchers": true,
|
|
18
|
+
"overwritePortal": true,
|
|
19
|
+
"overwriteDecks": true,
|
|
20
|
+
"overwritePackageScripts": true,
|
|
21
|
+
"overwriteWeekContent": false
|
|
22
|
+
},
|
|
23
|
+
"weeks": [
|
|
24
|
+
{
|
|
25
|
+
"number": 1,
|
|
26
|
+
"title": "Generalidades de IoT",
|
|
27
|
+
"date": "Mayo 04 de 2026",
|
|
28
|
+
"centralTheme": "Introducción al Internet de las cosas, componentes y aplicaciones",
|
|
29
|
+
"activity": "Actividad de reconocimiento conceptual"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"number": 2,
|
|
33
|
+
"title": "Estructuras Tecnológicas que soportan IoT",
|
|
34
|
+
"date": "Mayo 11 de 2026",
|
|
35
|
+
"centralTheme": "Arquitectura, sensores, conectividad, edge, fog y cloud",
|
|
36
|
+
"activity": "Actividad práctica con simulación IoT"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"number": 3,
|
|
40
|
+
"title": "Seguridad en IoT",
|
|
41
|
+
"date": "Mayo 18 de 2026",
|
|
42
|
+
"centralTheme": "Riesgos, vulnerabilidades, controles, monitoreo y buenas prácticas de seguridad",
|
|
43
|
+
"activity": "Simulación de alertas y clasificación de riesgos"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"number": 4,
|
|
47
|
+
"title": "Título semana 4",
|
|
48
|
+
"date": "2026",
|
|
49
|
+
"centralTheme": "Tema central de la semana",
|
|
50
|
+
"activity": "Actividad relacionada"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"number": 5,
|
|
54
|
+
"title": "Título semana 5",
|
|
55
|
+
"date": "2026",
|
|
56
|
+
"centralTheme": "Tema central de la semana",
|
|
57
|
+
"activity": "Actividad relacionada"
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"number": 6,
|
|
61
|
+
"title": "Título semana 6",
|
|
62
|
+
"date": "2026",
|
|
63
|
+
"centralTheme": "Tema central de la semana",
|
|
64
|
+
"activity": "Actividad relacionada"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"number": 7,
|
|
68
|
+
"title": "Título semana 7",
|
|
69
|
+
"date": "2026",
|
|
70
|
+
"centralTheme": "Tema central de la semana",
|
|
71
|
+
"activity": "Actividad relacionada"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"number": 8,
|
|
75
|
+
"title": "Título semana 8",
|
|
76
|
+
"date": "2026",
|
|
77
|
+
"centralTheme": "Tema central de la semana",
|
|
78
|
+
"activity": "Actividad relacionada"
|
|
79
|
+
}
|
|
80
|
+
]
|
|
81
|
+
}
|