ONI Vault es un sistema de gestión de archivos con soporte para carpetas, imágenes, videos, etiquetas, filtros, autenticación y más.
- Frontend: React + Vite + Axios + React Router
- Backend: Node.js + Express + PostgreSQL + Multer
- Autenticación: JWT (Login & Registro)
- Estilos: Bootstrap + diseño personalizado oscuro
- Almacenamiento: Archivos se guardan en carpetas por usuario y carpeta en
/uploads
.
- Crear y eliminar carpetas
- Subir imágenes/videos individual o múltiples (drag & drop)
- Ver detalles de archivo y editar descripción, carpeta y etiquetas
- Filtrar por tipo y buscar por descripción o etiqueta
- Eliminar múltiples archivos con selección masiva
- Acceso protegido por login
git clone https://github.com/EXTRANFUNEDGAR/ONI-Vault.git
cd ONI-Vault
Crea un archivo .env
en backend/
con lo siguiente:
PORT=5000
DB_USER=postgres
DB_PASSWORD=postgres
DB_HOST=localhost
DB_NAME=oni_vault
DB_PORT=5432
JWT_SECRET=clave_super_secreta
cd backend
npm install
cd ../frontend
npm install
CREATE DATABASE oni_vault;
Ejecuta las sentencias SQL del archivo db.sql
o schema.sql
si lo tienes.
cd backend
node index.js
cd frontend
npm run dev
docker-compose up --build
- Frontend: http://localhost:5173
- Backend/API: http://localhost:5000
- Base de datos PostgreSQL: puerto 5432
Asegúrate de que .env
esté en backend/
y configurado correctamente antes de ejecutar docker-compose
.
ONI-Vault/
├── backend/
│ ├── routes/
│ ├── models/
│ ├── middleware/
│ ├── uploads/
│ └── index.js
├── frontend/
│ ├── src/pages/
│ ├── src/components/
│ └── main.jsx
└── README.md
Edgar Enrique Delgado Sánchez