ver 0.0.6
PhotoWall es una aplicación web que permite a los usuarios subir y mostrar imágenes en una galería interactiva y dinámica utilizando NanoGallery2. La galería se presenta en un diseño tipo mosaico y cuenta con un botón flotante para facilitar la subida de nuevas imágenes.
- Subida de imágenes mediante un botón flotante.
- Visualización de imágenes en una galería tipo mosaico utilizando NanoGallery2.
- Diseño responsivo que se adapta a diferentes tamaños de pantalla.
- Backend con Node.js y Express para manejar la carga y visualización de imágenes.
- Autenticación de usuarios utilizando Passport.js.
- Base de datos SQLite para almacenamiento de usuarios.
- Dashboard de administración para gestión de usuarios.
- Node.js (versión 12 o superior)
- npm (gestor de paquetes de Node.js)
-
Clona el repositorio a tu máquina local:
git clone https://github.com/velosergio/PhotoWall
-
Navega al directorio del proyecto:
cd PhotoWall
-
Instala las dependencias necesarias:
npm install
-
Inicia el servidor:
node server.js
-
Abre tu navegador y navega a
http://localhost:3000
. -
Usa el botón flotante
+
en la esquina inferior derecha para seleccionar y subir imágenes. Las imágenes se mostrarán automáticamente en la galería tipo mosaico. -
Para acceder al dashboard de administración, navega a
http://localhost:3000/admin
. Debes estar autenticado para acceder a esta ruta.
public/
index.html
: Archivo HTML principal.styles.css
: Estilos personalizados para la página.script.js
: Lógica de JavaScript para manejar la galería y la subida de imágenes.login.html
: Página de inicio de sesión.register.html
: Página de registro de usuarios.admin.html
: Página principal del dashboard de administración.admin-users.html
: Página de gestión de usuarios en el dashboard de administración.assets/js/
: Directorio para scripts JavaScript personalizados.corefix.js
: Script para corregir funcionalidades de CoreUI.admin-users.js
: Script para manejar la lógica de la página de gestión de usuarios.
uploads/
: Directorio donde se almacenan las imágenes subidas.models/
user.js
: Configuración y creación de la tabla de usuarios.
routes/
auth.js
: Rutas para autenticación de usuarios (login, register, logout).image.js
: Rutas para subir y listar imágenes.userRoutes.js
: Ruta para obtener todos los usuarios registrados.adminRoutes.js
: Rutas para el dashboard de administración.forgotPassword.js
: Rutas para restablecimiento de contraseñas.resetPassword.js
: Rutas para actualizar contraseñas.
config/
passport.js
: Configuración de Passport.js para autenticación.
server.js
: Archivo del servidor Node.js para manejar las rutas de la aplicación.package.json
: Archivo de configuración de npm con las dependencias del proyecto.
- NanoGallery2 para la galería de imágenes.
- Node.js y Express para el backend.
- Multer para la gestión de la subida de archivos.
- Sharp para la optimización de imágenes.
- Passport.js para la autenticación de usuarios.
- bcryptjs para el hashing de contraseñas.
- SQLite como base de datos.
- CoreUI para el dashboard de administración.
Las contribuciones son bienvenidas. Si tienes alguna mejora o corrección, por favor abre un issue o envía un pull request.
Este proyecto está licenciado bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.