A-DDIE es un sistema moderno de código abierto diseñado para la gestión integral y colaboración virtual en centros de producción y medios educativos. Desarrollado bajo los principios de la Ciencia Abierta, este software busca optimizar el flujo de trabajo en instituciones educativas, facilitando el seguimiento de proyectos, la gestión de colaboradores y la producción de contenido multimedia.
A-DDIE no es solo una herramienta, es una plataforma para la transformación digital de los entornos educativos, permitiendo una administración centralizada, eficiente y accesible.
- 🏢 Gestión de Centros de Producción: Administra recursos, proyectos y equipos en un solo lugar.
- 👥 Colaboración Virtual: Sistema de roles y permisos para equipos multidisciplinarios (docentes, estudiantes, productores).
- 📊 Seguimiento de Proyectos: Control de estado, tareas y cronogramas para producciones audiovisuales o multimedia.
- 🎨 Interfaz Moderna y Accesible: Desarrollado con Laravel 10 y Bootstrap 5, con soporte nativo para modo oscuro/claro.
- 🔌 API REST: Endpoints para integración con otras herramientas institucionales.
- 📱 Responsive Design: Accesible desde cualquier dispositivo, promoviendo la movilidad en los campus.
- Backend: Laravel 10 (PHP 8.1+)
- Frontend: Bootstrap 5, JavaScript, AJAX
- Base de Datos: MySQL
- Autenticación: Laravel Sanctum
- PHP 8.1 o superior
- Composer
- Node.js y NPM
- MySQL 5.7 o superior
- Servidor web (Apache/Nginx)
git clone https://github.com/DanielDev87/virtual-center-app
cd virtual-center-appcomposer installnpm installcp env.example .envEditar el archivo .env con tus configuraciones:
APP_NAME="Virtual Center"
APP_ENV=local
APP_KEY=
APP_DEBUG=true
APP_URL=http://localhost
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=virtual_center_db
DB_USERNAME=root
DB_PASSWORD=tu_passwordphp artisan key:generatephp artisan migratenpm run devPara producción:
npm run production<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews -Indexes
</IfModule>
RewriteEngine On
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]
# Send Requests To Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>location / {
try_files $uri $uri/ /index.php?$query_string;
}virtual-center-app/
├── app/
│ ├── Http/Controllers/ # Controladores
│ ├── Models/ # Modelos Eloquent
│ └── Providers/ # Proveedores de servicios
├── database/
│ └── migrations/ # Migraciones de base de datos
├── resources/
│ ├── views/ # Vistas Blade
│ ├── css/ # Estilos CSS
│ └── js/ # JavaScript
├── routes/
│ ├── web.php # Rutas web
│ └── api.php # Rutas API
└── public/ # Archivos públicos
institutions- Institucionesmaterial_types- Tipos de materialuser_roles- Roles de usuariousers- Usuarios del sistemaproject_tracking- Seguimiento de proyectosproject_comments- Comentarios de proyectostask_lists- Lista de tareasmediation_forms- Formularios de mediaciónform_html_descriptions- Descripciones HTML
Para migrar datos desde el sistema anterior, ejecuta:
php artisan migrate:from-legacy- URL:
http://localhost - Login:
/login - Dashboard:
/dashboard(requiere autenticación)
- Inicio - Página principal con información general
- Colaboradores - Gestión de usuarios y perfiles
- Gestión de Servicios - Administración de proyectos
- Emisora - Micrositio de radio
- Monitor - Panel de monitoreo y analytics
El sistema incluye un botón de toggle en la barra de navegación para cambiar entre modo claro y oscuro. La preferencia se guarda en la sesión del usuario.
# Servidor de desarrollo
php artisan serve
# Compilar assets en tiempo real
npm run watch
# Ejecutar tests
php artisan test
# Limpiar cache
php artisan cache:clear
php artisan config:clear
php artisan view:clearLas vistas utilizan el sistema de plantillas Blade de Laravel con un layout principal (layouts/app.blade.php) que incluye:
- Navbar responsive
- Toggle de tema
- Footer
- Scripts y estilos
GET /api/user- Información del usuario autenticadoPOST /api/theme- Guardar preferencia de temaGET /ajax/search- Búsqueda de proyectosGET /ajax/project-details/{id}- Detalles de proyectoPOST /ajax/send-status- Actualizar estado de proyecto
Los colores principales se definen en resources/css/app.css:
:root {
--vc-primary: #0280AE;
--vc-secondary: #6c757d;
--vc-accent: #17a2b8;
}Los roles de usuario se configuran en la tabla user_roles y se pueden personalizar según las necesidades del proyecto.
- Autenticación con Laravel Sanctum
- Protección CSRF en formularios
- Validación de datos de entrada
- Sanitización de salida
- Rate limiting en API
- Fork el proyecto
- Crear una rama para tu feature (
git checkout -b feature/nueva-funcionalidad) - Commit tus cambios (
git commit -am 'Agregar nueva funcionalidad') - Push a la rama (
git push origin feature/nueva-funcionalidad) - Crear un Pull Request
Este proyecto está bajo los principios de la Ciencia Abierta y utiliza la licencia Apache 2.0. Esto significa que eres libre de:
✅ Usarlo para fines comerciales y académicos. ✅ Modificarlo y adaptarlo a tus necesidades. ✅ Distribuir copias. ✅ Usar sus patentes (si las hubiera). No se proporciona garantía alguna, tal como estipula la licencia. Para más detalles, consulta el archivo LICENSE en la raíz del proyecto.
Para soporte técnico, preguntas o reportar errores, por favor contacta al equipo de desarrollo:
- Desarrollador Principal: Daniel Agudelo
- Repositorio Oficial: https://github.com/DanielDev87
- Reportar Issues: https://github.com/DanielDev87/virtual-center-app/issues
A-DDIE - Sistema de Gestión y Colaboración Virtual Impulsando la Ciencia Abierta y la transformación digital en la educación. Desarrollado con ❤️ por Daniel Agudelo usando Laravel y Bootstrap.
