school_wall
Plataforma web auto-hospedada para comunidades universitarias con gestión de contenido, moderación y sistema de peticiones de radio. Construida en Node.js, Vue y MySQL, ofrece flujos de trabajo complejos para operaciones estudiantiles sin dependencias de contenedores por defecto.
Ficha actualizada 26 sept 2026, 8:17 · upstream 26 sept 2026, 7:45 · release sin release detectada
Qué es school_wall
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
School Wall es una plataforma web auto-hospedada diseñada específicamente para comunidades universitarias y campus. A diferencia de las plantillas de feed simples, integra gestión de contenido completo, interacciones sociales, moderación y un sistema de peticiones de radio requests en una sola aplicación. El proyecto prioriza la experiencia móvil nativa y ofrece herramientas robustas para equipos de medios estudiantiles, incluyendo la generación de borradores para cuentas públicas y gestión de cronogramas de emisión.
La arquitectura se basa en Node.js 20+ con Express para el backend y MySQL 8+ para la persistencia de datos. El frontend utiliza Vue junto con HTML/CSS/JS nativo, manteniendo una separación clara entre recursos estáticos y lógica de aplicación. La plataforma soporta integraciones opcionales como APIs de inteligencia artificial, servicios de correo electrónico SMTP y conectores de WeChat, permitiendo una personalización profunda sin sacrificar la seguridad o la privacidad de los datos en entornos locales.
El sistema incluye flujos de trabajo complejos para la gestión de contenido, como la revisión de publicaciones, la asignación de roles administrativos y la limpieza automática de archivos multimedia no publicados. Está licenciado bajo Apache-2.0, lo que facilita su uso académico o comunitario siempre que se respeten las atribuciones de autoría y los límites de la versión pública desensibilizada del código fuente.
- Gestión integral de comunidad estudiantil con perfiles, comentarios y notificaciones.
- Sistema de radio requests para gestionar peticiones de canciones y cronogramas de emisión.
- Herramienta de moderación de contenido con paneles administrativos para revisión y gestión de usuarios.
- Plataforma de medios para generar borradores de artículos y gestionar cuentas públicas desde el backend.
- Arquitectura modular con separación clara entre frontend (Vue/HTML) y backend (Node.js).
- Soporte nativo para experiencia móvil optimizado, no solo diseño responsive básico.
- Flujos de trabajo de negocio complejos integrados como gestión de cronogramas de radio.
- Integraciones opcionales seguras con APIs externas (AI, WeChat, SMTP) mediante configuración.
- No incluye Docker ni Compose por defecto, requiriendo despliegue manual o scripts nativos.
- Alta complejidad técnica inicial para instalación y configuración de entorno local.
- Requiere gestión manual de variables de entorno y claves de seguridad (JWT_SECRET).
- Dependencia de MySQL 8+ con scripts de migración que deben ejecutarse correctamente.
Capturas del proyecto
Imágenes reales detectadas en la documentación del repositorio.
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Requiere Node.js 20+ y MySQL 8+. Clonar repositorio, ejecutar `npm ci` y copiar `.env.example` a `.env`. Configurar variables de entorno críticas como DB_HOST, JWT_SECRET e INITIAL_ADMIN_PASSWORD antes de ejecutar `npm run bootstrap:admin`. El despliegue no es one-click; se recomienda usar scripts nativos o contenerizar manualmente si se desea. Verificar salud con `/api/health`. No usar para producción sin HTTPS y backups adecuados.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Puede sustituir a
Relaciones detectadas por el análisis del repositorio y su categoría.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.


