Gallery
Gallery is a modern, user-friendly web application for managing personal photo collections. It allows users to securely upload, view, organize, and share images, with a responsive interface and robust backend features.
Key Features & How They Work
- Authentication & User Management:
- Sign up/sign in with email and password, with secure session management.
- Sessions persist across reloads; users must be logged in to access their images.
- Secure logout functionality for all users.
- Image Gallery & Management:
- Upload multiple images at once (JPG, PNG, JPEG, GIF), with duplicate filenames automatically renamed.
- Responsive grid display, image detail view, and carousel navigation.
- Bin (Trash) system for deleted images, with restore and permanent delete options.
- Secure, encrypted links for sharing images with others.
- User Interface & Experience:
- Navbar for navigation, login/signup modals, and logout.
- Responsive design for all device sizes.
- AJAX loading for dynamic image loading and improved performance.
- Bootstrap modals for login, signup, and image upload dialogs.
- Custom 404 error page for invalid routes.
Technologies Used
- PHP (backend logic, server-side processing)
- MySQL (relational database for user and image data)
- HTML, CSS, Bootstrap (responsive, mobile-friendly frontend)
- JavaScript & jQuery (dynamic UI interactions, AJAX)
Security, Error Handling & Performance
- Input validation and sanitization for email and image uploads
- File handling with automatic renaming and secure storage
- Encrypted sharing links using OpenSSL