Manual de Usuario de StreamEdu
Guía exhaustiva, paso a paso y orientada a la productividad. Aprende a dominar todas las herramientas, atajos, formatos de exportación dual (JSON y Paquetes ZIP), libreta Markdown y personalizaciones de la plataforma de aprendizaje autodidacta más rápida y privada.
0% Servidores
100% de datos en tu navegador
8 Paletas
Alto contraste WCAG AAA
Libreta .md
Aislada por curso & Sanitizada
Exportación Dual
.json ligero y .zip con adjuntos
Introducción y Filosofía
StreamEdu es un entorno de reproducción inteligente y toma de notas diseñado para estructurar cursos educativos a partir de videos de YouTube, playlists y recursos digitales, sin distracciones de algoritmos ni publicidad lateral.
Arquitectura Local (Zero-Server Privacy)
A diferencia de las plataformas tradicionales que requieren inicio de sesión y rastrean tu actividad en bases de datos remotas, StreamEdu opera 100% en el lado del cliente (tu navegador). Tus cursos, apuntes, tiempos y progreso residen exclusivamente en el almacenamiento seguro de tu computadora (`localStorage` e `IndexedDB`).
Requisitos del Sistema y Compatibilidad
La aplicación no requiere instalación de software auxiliar ni configuración de servidores locales. Funciona
directamente abriendo el archivo index.html en cualquier navegador web moderno:
-
Google Chrome / Brave / Edge: Soporte total, incluyendo la moderna API nativa
window.showSaveFilePickerpara descargas directas de notas. -
Mozilla Firefox / Apple Safari: Soporte completo con fallback transparente de descarga automática mediante blobs.
-
Dispositivos Móviles y Tablets: Interfaz con diseño fluido adaptativo (Mobile-First) y cajón desplegable lateral.
Experiencia de Bienvenida y Spotlight Tour
La primera vez que inicias StreamEdu, la aplicación presenta un modal interactivo de bienvenida que te permite elegir entre dos caminos de aprendizaje:
Explorar Curso Demo
Carga instantáneamente la «Masterclass de Desarrollo Web Frontend» con 9 lecciones organizadas y activa el Spotlight Tour guiado.
Comenzar desde Cero
Abre el lienzo en blanco para que puedas cargar tus propios archivos JSON o registrar videos manualmente con el botón «+ Nuevo Video».
El Recorrido Guiado Interactivo (Spotlight Tour)
El tour oscurece la pantalla suavemente y proyecta un foco iluminado sobre los cinco elementos neurálgicos de la aplicación:
| Paso | Elemento Resaltado | Explicación y Función |
|---|---|---|
| 1 | Widget de Progreso y Temas | Muestra el porcentaje completado en tiempo real y el botón de paletas de color. |
| 2 | Reproductor 16:9 | El visor principal de YouTube con controles de lección anterior/siguiente. |
| 3 | Módulos y Lecciones | Estructura jerárquica con acordeones, miniaturas y casillas de verificación. |
| 4 | Búsqueda y Filtros Rápidos | Filtra al instante entre lecciones pendientes y completadas. |
| 5 | Libreta de Apuntes | Cajón lateral con editor de Markdown en tiempo real y tipografías intercambiables. |
¿Cómo reiniciar el Tour en cualquier momento?
Puedes reactivar el recorrido guiado cuando lo desees haciendo clic en el botón con ícono de brújula ubicado en la barra superior, o usando el atajo de teclado correspondiente.
Anatomía de la Barra Superior (Topbar)
La barra superior es el centro neurálgico de control. A continuación se presenta la captura de la aplicación en el tema Lemon Ice-Cream con los puntos funcionales clave:
Logotipo Inteligente
Alterna automáticamente entre logo-light.png y logo-dark.png para asegurar
contraste óptimo según el tema.
Barra de Progreso
Muestra exactamente cuántas lecciones has completado (ej. 0 de 9 completados - 0%) con relleno visual dinámico.
Cargar Curso (.json / .zip / .licpack)
Abre el modal para importar cursos mediante archivo JSON o paquete comprimido ZIP con recursos locales, arrastrar y soltar (Drag & Drop), o URL remota con CORS.
Exportar Curso (Dual: JSON o ZIP)
Descarga la estructura del curso. Si tu curso contiene archivos locales en IndexedDB, despliega el modal para elegir entre JSON Ligero o Paquete Completo (.zip) con todos tus archivos adjuntos.
+ Nuevo Video
Permite registrar un video manual indicando módulo de destino, título, URL de YouTube y tiempos de recorte.
Recursos (Badge)
Muestra el total de enlaces, documentación y archivos adjuntos del curso activo con un contador dinámico amarillo.
Brújula (Tour)
Botón de reinicio instantáneo del recorrido interactivo paso a paso para refrescar la memoria sobre las herramientas.
Selector de Temas
Abre el menú con las 8 paletas de color con punto indicador en vivo del tono acento activo.
Reproductor y Controles de Lección
El reproductor de StreamEdu está optimizado para YouTube con estrictas directivas de privacidad, relación de aspecto 16:9 y soporte de fragmentación por minutos:
Formatos de Enlace de YouTube Soportados
Puedes ingresar casi cualquier variante de URL de YouTube en la aplicación:
-
URLs estándar de navegador:
https://www.youtube.com/watch?v=VIDEO_ID -
URLs acortadas de compartir:
https://youtu.be/VIDEO_ID -
URLs con timestamps de inicio y fin:
https://www.youtube.com/watch?v=VIDEO_ID&t=120so parámetros JSONstart: 60, end: 300para reproducir solo el fragmento educativo deseado.
Barra de Acciones Inferior
Justo debajo del reproductor se ubica la barra de navegación inmediata de la lección:
| Elemento | Acción / Comportamiento | Efecto Inmediato |
|---|---|---|
| Casilla «Marcar como completado» | Al hacer clic se marca la lección con un check SVG animado. | Aumenta la barra de progreso general y cambia el estado en la lista lateral. |
| Botón Anterior (⏮) | Salta a la lección previa del mismo módulo o del módulo anterior. | Carga el video inmediatamente sin recargar la página. |
| Botón Siguiente (⏭) | Avanza a la lección siguiente en el orden del curso. | Si la lección previa no estaba marcada, te permite continuar fluidamente. |
| Botón Enlace Externo (↗) | Abre el video en una nueva pestaña de YouTube. | Útil si deseas leer comentarios o acceder a subtítulos automáticos en otros idiomas. |
Controlador Inteligente de YouTube y Auto-Avance
StreamEdu integra YouTubePlayerController mediante la API oficial de IFrame de YouTube, ofreciendo una experiencia de reproducción automatizada:
-
Detección de Finalización en Tiempo Real: Cuando un video concluye de reproducirse (evento
YT.PlayerState.ENDED), la lección se marca automáticamente como vista y se emite una notificación Toast confirmatoria. -
Control de Fragmentos por Minutos (Start / End): En lecciones fraccionadas, un temporizador interno verifica periódicamente la posición de reproducción. Al alcanzar el minuto límite (
endTime), detiene la reproducción y registra la lección como concluida. -
Auto-Avance Continuo: Tras completarse la lección actual, el sistema avanza fluidamente a la siguiente lección tras un intervalo de 800 ms, permitiendo estudiar en modo manos libres.
-
Fallback Seguro Offline / Protocolo Local: Si no hay conexión a internet o se ejecuta la aplicación bajo el protocolo local
file:///, el sistema conmuta automáticamente al reproductor tradicional por parámetros de URL, garantizando que el curso siga siendo 100% usable.
Libreta de Apuntes en Tiempo Real (Markdown)
La Libreta de Apuntes es un cajón lateral deslizante que te permite tomar notas estructuradas mientras miras la clase sin perder de vista la lección:
Herramientas de Edición y Tipografía
La libreta cuenta con una barra de herramientas completa en la parte superior:
-
Selector de Tipografía (5 Fuentes): Alterna instantáneamente entre cinco familias tipográficas:
•Plus Jakarta (Sans): Moderna, limpia y de máxima legibilidad técnica.
•Architects Daughter: Estilo manuscrito dinámico inspirado en Virgil / Excalidraw.
•Patrick Hand: Caligráfica cuidada para notas de estudio personales.
•JetBrains Mono: Monoespaciada perfecta para programación, snippets y terminal.
•Merriweather: Tipografía serif para lectura cómoda y descansada de apuntes extensos. -
Selector de Tamaño: Elige entre
13px,15px,17pxo19pxsegún tus preferencias visuales. -
Botones Rápidos de Markdown: Encabezados (
H1,H2,H3), Negrita (B), Cursiva (I), Listas (≡), Citas (”) y Bloques de Código (<>). -
Pestañas Editor / Vista Previa: Alterna entre la escritura en texto plano y la previsualización formateada con soporte de sintaxis Obsidian (incluyendo tareas interactivas
- [ ]).
Anexar y Descargar Apuntes
Botón «Anexar archivo»
Permite importar apuntes existentes en formato .md o .txt desde tu
computadora, sumándolos al final de tus notas actuales sin sobrescribir lo que ya tenías.
Botón «Descargar .md» (Windows Picker)
Utiliza la API nativa del sistema operativo para abrir la ventana de guardado de Windows, permitiéndote elegir la carpeta de destino y el nombre exacto del archivo.
Aislamiento Estricto por Curso y Sanitización XSS
Tus notas se indexan de manera independiente bajo la clave única de cada curso (course_player_notes_${courseId}).
Al cargar un curso nuevo o alternar entre cursos, tus apuntes previos nunca se mezclarán ni se perderán. Además, el renderizador cuenta con sanitización nativa sanitizeHtml() que neutraliza scripts maliciosos sin alterar la interactividad de tus checklists.
Auto-Guardado Inteligente («Guardado ✓»)
No necesitas presionar guardar constantemente. Cada pulsación de tecla se sincroniza en milisegundos con el almacenamiento local del navegador, mostrando el badge verde confirmatorio.
Gestión de Cursos y Especificación JSON
StreamEdu utiliza un esquema JSON abierto y universal. Puedes estructurar tus propios cursos en cualquier
editor de texto o compartir archivos .json con tus compañeros de estudio:
Estructura Estándar de un Archivo de Curso
{
"title": "Masterclass de Desarrollo Web Frontend",
"description": "Curso completo desde fundamentos hasta arquitecturas avanzadas",
"version": "2.0.0",
"resources": [
{
"title": "MDN Web Docs",
"url": "https://developer.mozilla.org",
"type": "link"
}
],
"modules": [
{
"id": "mod_1",
"title": "Módulo 1: Fundamentos y Semántica Web",
"lessons": [
{
"id": "les_1_1",
"title": "1. Estructura y Semántica Moderna en HTML5",
"url": "https://www.youtube.com/watch?v=UB1O30fR-EE",
"duration": "1:08:44",
"completed": false,
"start": 0,
"end": 4124,
"notes": "Introducción a etiquetas header, nav, main y footer."
}
]
}
]
}
Campos Técnicos de cada Lección
| Campo | Tipo | Obligatorio | Descripción y Ejemplo |
|---|---|---|---|
id |
String | Sí | Identificador único alfanumérico (ej. "les_01"). |
title |
String | Sí | Nombre de la lección visible en la lista lateral. |
url |
String | Sí | Enlace de YouTube (completo o acortado). |
completed |
Boolean | No | true o false para el estado de progreso. |
start / end |
Number | No | Segundo exacto de inicio y fin para reproducir solo un segmento del video. |
notes |
String | No | Apuntes o descripción contextual de la lección. |
Exportación Dual: JSON Ligero vs Paquete Completo (.zip)
Al hacer clic en el botón «Exportar JSON» de la cabecera, StreamEdu evalúa inteligentemente si tu curso contiene archivos locales almacenados en IndexedDB:
JSON Ligero (.json) — Solo Texto
Descarga únicamente el archivo .json estructurado con tus módulos, lecciones, enlaces en la nube y apuntes. Es extremadamente liviano (pocos kilobytes) e ideal para enviar por WhatsApp, Slack o correo electrónico cuando tus materiales están enlazados en la web.
Paquete Completo (.zip / .licpack) — RECOMENDADO
Genera un archivo comprimido estándar que contiene el archivo course.json y una subcarpeta attachments/ con todos los archivos binarios locales (PDFs, diapositivas, código fuente). Es 100% portable para llevar en una memoria USB o abrir en cualquier otro equipo sin perder ningún archivo adjunto.
Importador Polimórfico y Motor de Empaquetado en el Cliente
StreamEdu incluye el módulo ZipPackager, un motor de compresión y descompresión binaria desarrollado en Vanilla JavaScript puro (con cálculo nativo de CRC-32 y DataView):
-
Cero Dependencias y 100% Privado: Todo el empaquetado y descompresión ocurre en la memoria RAM de tu navegador. Ningún archivo ni dato se transmite jamás a un servidor externo.
-
Arrastrar y Soltar Universal (Drag & Drop): Puedes soltar tanto archivos
.jsoncomo paquetes.zipo.licpacken la zona de carga de «Cargar JSON». -
Restauración Automática en IndexedDB: Al importar un paquete comprimido, el sistema extrae
course.json, carga el temario y guarda de nuevo todos los archivos binarios de la carpetaattachments/en la base de datos local del navegador, sin generar duplicados.
Validación Defensiva de Archivos ZIP
Si intentas cargar un archivo ZIP corrupto o que no contenga el archivo course.json, el sistema intercepta el error mediante validaciones multicapa, mostrando una alerta descriptiva en rojo y protegiendo tu curso y apuntes actuales sin alterar nada.
Gestor de Recursos y Materiales
Al hacer clic en el botón «Recursos» de la barra superior, se despliega el panel modal de materiales asociados al curso activo. Este panel cuenta con dos modalidades de almacenamiento:
Pestañas del Gestor de Recursos
-
Pestaña 1: Subir Archivo Local (Máx. 10 MB): Permite arrastrar o seleccionar documentos PDF, diapositivas, proyectos comprimidos o imágenes. El contenido binario se almacena directamente en la base de datos IndexedDB de tu navegador para acceso sin internet.
-
Pestaña 2: Vincular Enlace en la Nube: Para registrar enlaces a carpetas de Google Drive, repositorios de GitHub, tableros de Figma o artículos web con título personalizado.
-
Badge Contador Dinámico: El botón superior refleja en tiempo real la cantidad total de materiales disponibles en el curso.
-
Descarga y Eliminación Individual: Cada tarjeta de recurso cuenta con un botón para descargar el archivo a tu disco o abrir el enlace, así como un botón para eliminarlo del curso.
Los 8 Temas de Color y Accesibilidad
StreamEdu cuenta con 8 paletas minuciosamente calibradas para ofrecer un contraste cromático superior a los estándares de accesibilidad WCAG AAA:
Obsidian Dark
Fondo oscuro con acento ÍndigoCyber Emerald
Verde Esmeralda y MentaNordic Frost
Azul Polar con Cian GlaciarSunset Amber
Carbón cálido y Ámbar FuegoClean Light
Modo claro y Azul ZafiroRose Quartz
Pizarra y Rosa EléctricoLemon Ice-Cream ⭐
Vainilla, Limón y Menta (Activo)Iron-Man
Carmesí Stark, Oro y Arc CyanAdaptación Inteligente de Logotipos
Al cambiar de tema, la aplicación detecta si la paleta seleccionada es de fondo claro (como Clean
Light o Lemon Ice-Cream) o fondo oscuro (como Obsidian o
Iron-Man). Automáticamente conmuta el archivo del isotipo a logo-light.png o
logo-dark.png para garantizar una legibilidad inmaculada.
Atajos de Teclado y Preguntas Frecuentes
Tabla de Atajos de Teclado
| Función / Acción | Atajo de Teclado | Contexto |
|---|---|---|
| Avanzar al siguiente paso del Tour | Enter o → Flecha Derecha | Durante el Spotlight Tour |
| Retroceder al paso previo del Tour | ← Flecha Izquierda | Durante el Spotlight Tour |
| Cerrar / Omitir el Tour | Esc | Durante el Spotlight Tour |
| Cerrar modales o cajón de notas | Esc | En cualquier ventana emergente |
| Imprimir o Exportar Manual a PDF | Ctrl + P | En esta página de manual |
Preguntas Frecuentes (FAQ)
.json o .zip en la ventana de carga para tener el curso y todos sus materiales listos para estudiar.
course.json junto a la carpeta attachments/ con todos los archivos binarios que subiste a IndexedDB. Es la opción ideal para transferir cursos completos entre computadoras o compartirlos de forma 100% autónoma.
course.json. Si el paquete no tiene la firma válida, está truncado o no incluye la definición del curso, la operación se interrumpe de inmediato mostrando una alerta en rojo en el modal, protegiendo tu sesión actual sin alterar tus datos ni borrar apuntes.
course_player_notes_${courseId}). Al cambiar de curso o importar un archivo nuevo, el sistema carga exclusivamente las notas correspondientes a ese curso (o limpia el editor si el nuevo curso no tiene notas), evitando fugas o solapamientos de apuntes entre materias distintas.