A website for me to share my hobby of photography. https://mckopserver.ddns.net/photogallery
Go to file
Kiyan 6f8af22b62 Enhance README and documentation: Update application overview, features, and setup instructions; add detailed architecture and workflows; introduce future roadmap and technology stack. 2025-12-21 09:43:43 +02:00
.mvn/wrapper Photo Gallery Base Setup 2025-09-27 18:42:21 +02:00
screenshots Enhance README and documentation: Update application overview, features, and setup instructions; add detailed architecture and workflows; introduce future roadmap and technology stack. 2025-12-21 09:43:43 +02:00
src Refactor HTML templates for improved structure and styling 2025-12-21 09:07:18 +02:00
.gitattributes Photo Gallery Base Setup 2025-09-27 18:42:21 +02:00
.gitignore Refactor HTML templates for improved structure and styling 2025-12-21 09:07:18 +02:00
README.md Enhance README and documentation: Update application overview, features, and setup instructions; add detailed architecture and workflows; introduce future roadmap and technology stack. 2025-12-21 09:43:43 +02:00
documenation.md Enhance README and documentation: Update application overview, features, and setup instructions; add detailed architecture and workflows; introduce future roadmap and technology stack. 2025-12-21 09:43:43 +02:00
documentation.md Enhance README and documentation: Update application overview, features, and setup instructions; add detailed architecture and workflows; introduce future roadmap and technology stack. 2025-12-21 09:43:43 +02:00
future.md Enhance README and documentation: Update application overview, features, and setup instructions; add detailed architecture and workflows; introduce future roadmap and technology stack. 2025-12-21 09:43:43 +02:00
mvnw Photo Gallery Base Setup 2025-09-27 18:42:21 +02:00
mvnw.cmd Photo Gallery Base Setup 2025-09-27 18:42:21 +02:00
pom.xml Refactor HTML templates for improved structure and styling 2025-12-21 09:07:18 +02:00
stack.md Enhance README and documentation: Update application overview, features, and setup instructions; add detailed architecture and workflows; introduce future roadmap and technology stack. 2025-12-21 09:43:43 +02:00

README.md

PhotoGallery

Java Spring Boot Bootstrap License

PhotoGallery is a responsive and dynamic web application built with Spring Boot and Thymeleaf. It features a modern masonry-style layout for organizing images of varying sizes, optimized for performance and usability across desktop and mobile devices.

Features: - Masonry Grid Layout: Automatically arranges images of different sizes in an aesthetically pleasing masonry-style grid. - Lazy Loading: Images load as you scroll for faster initial load times and better performance. - Fullscreen Modal Viewer: Click an image to view it in fullscreen with previous/next navigation. - Responsive Design: Fully mobile-friendly using Bootstrap 5. - Dynamic Image Loading: Supports adding new images dynamically from the backend without changing frontend code. - Hover Effects: Smooth zoom and shadow effects for a modern look.

🌟 Features

\ No newline at end of file

  • Masonry Grid Layout: Automatically arranges images of different aspect ratios in an aesthetically pleasing grid.
  • Lazy Loading: Images load asynchronously as you scroll, ensuring fast initial page loads.
  • Smart Ingestion: Scans local directories to automatically compress images, generate thumbnails, and extract metadata (EXIF).
  • Fullscreen Viewer: Immersive modal viewer with navigation controls.
  • Search & Filter: Search photos by title or tags.
  • Metadata Extraction: Automatically extracts and displays camera details, resolution, and file size.
  • Responsive Design: Built with Bootstrap 5 for a seamless mobile experience.

🚀 Getting Started

Prerequisites

  • Java 17 or higher
  • Maven (wrapper included)

Configuration

Configure your image paths in src/main/resources/application.properties:

photogallery.paths.originals=/path/to/your/images
photogallery.paths.thumbnails=/path/to/your/thumbnails

Running the Application

Use the included Maven wrapper to run the application:

# Linux/macOS
./mvnw spring-boot:run

# Windows
mvnw.cmd spring-boot:run

Access the gallery at http://localhost:8080.

📚 Documentation

See documentation.md for architectural details and stack.md for the technology stack.