A full-stack photo management web application where users can create albums, upload photos, and interact through comments.
- User Authentication — Secure signup, login, and logout with password hashing
- Photo Albums — Create and browse photo albums
- Photo Upload — Upload images with title, description, and tags
- Photo Management — Edit photo details and control visibility
- Comments — Users can comment on photos
- Email Notifications — Photo owners receive notifications when someone comments
- Search — Find photos by title, description, or tags
- Responsive Design — Works on desktop and mobile
- Backend: Node.js, Express.js
- Database: MongoDB
- View Engine: Handlebars
- Authentication: express-session, bcrypt
- File Uploads: Multer
- Clone the repository
- Run
npm install - Configure MongoDB connection in
persistence.js - Run
node app.js - Open
http://localhost:8000
Ibrahim Al Shouli
Software Engineering Student — University of Doha for Science and Technology