Skip to content

polaarts/epauta

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

82 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

ePAUTA

Plataforma educativa open source para compartir y visualizar recursos académicos universitarios

License: MIT Built with Astro

📖 Descripción

ePAUTA es una plataforma web diseñada para facilitar el acceso a recursos académicos de cursos universitarios. Permite a estudiantes visualizar y descargar material educativo organizado por programas académicos y asignaturas.

Características principales

  • 📚 Visualización de PDFs y documentos directamente en el navegador
  • 🔍 Organización por programas académicos (EIT, EOC, EII, Plan Común)
  • 📱 Diseño responsive y moderno
  • ⚡ Carga rápida con Astro y SSR
  • 🎨 Interfaz limpia construida con Tailwind CSS y shadcn/ui
  • ☁️ Almacenamiento en la nube con Cloudflare R2

🚀 Tech Stack

📋 Requisitos previos

  • Node.js 18.0 o superior
  • npm o pnpm
  • Cuenta de Cloudflare con R2 habilitado (para almacenamiento de archivos)

🛠️ Instalación

  1. Clona el repositorio:
git clone https://github.com/open-source-udp/epauta.git
cd epauta
  1. Instala las dependencias:
npm install
  1. Configura las variables de entorno:
cp .env.example .env

Edita el archivo .env con tus credenciales de Cloudflare R2:

# Cloudflare R2 Configuration
CLOUFLARE_TOKEN_VALUE=your_cloudflare_token_here
R2_ENDPOINT=https://<account_id>.r2.cloudflarestorage.com
R2_ACCESS_KEY_ID=your_access_key_id_here
R2_SECRET_ACCESS_KEY=your_secret_access_key_here
R2_BUCKET_NAME=epauta
R2_PUBLIC_DOMAIN=https://yourdomain.com

Para obtener las credenciales de R2, consulta la Guía de configuración de R2.

  1. Inicia el servidor de desarrollo:
npm run dev

Abre http://localhost:4321 en tu navegador.

📦 Scripts disponibles

Comando Acción
npm install Instala las dependencias
npm run dev Inicia el servidor de desarrollo en localhost:4321
npm run build Construye el sitio para producción en ./dist/
npm run preview Previsualiza la build de producción localmente
npm run astro Ejecuta comandos de Astro CLI
npm run test:r2 Prueba la conexión con Cloudflare R2
npm run upload:r2 Sube archivos a Cloudflare R2

📁 Estructura del proyecto

/
├── public/              # Archivos estáticos
├── src/
│   ├── components/      # Componentes React y Astro
│   │   ├── ui/         # Componentes de shadcn/ui
│   │   ├── FileViewer.jsx
│   │   ├── PDFViewer.jsx
│   │   └── ...
│   ├── data/           # Datos de cursos y recursos
│   │   ├── plan-comun/
│   │   ├── eit/
│   │   ├── eoc/
│   │   └── eii/
│   ├── layouts/        # Layouts de página
│   ├── lib/            # Utilidades y helpers
│   │   ├── storage.ts  # Cliente de Cloudflare R2
│   │   └── utils.ts
│   ├── pages/          # Rutas de la aplicación
│   └── styles/         # Estilos globales
├── scripts/            # Scripts de utilidad
├── docs/               # Documentación adicional
└── package.json

🔧 Configuración de Cloudflare R2

Este proyecto utiliza Cloudflare R2 para el almacenamiento de archivos. Para configurar R2 consulta la Guía rápida de R2

🤝 Contribuir

Las contribuciones son bienvenidas. Por favor, lee nuestra Guía de contribución antes de enviar un Pull Request.

Proceso rápido:

  1. Fork el proyecto
  2. Crea una rama para tu feature (git checkout -b feature/AmazingFeature)
  3. Commit tus cambios (git commit -m 'Add: nueva característica')
  4. Push a la rama (git push origin feature/AmazingFeature)
  5. Abre un Pull Request

📝 Licencia

Este proyecto está bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.

👥 Autor

Samuel Angulo

📞 Soporte

Si encuentras un bug o tienes una sugerencia:


Hecho con ❤️ para la comunidad universitaria.

About

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •