Gallery overview
Each event has its own photo gallery containing all images uploaded by the couple and their guests. The gallery displays photos with metadata and provides options for viewing and managing the collection.Images are stored in Amazon S3, providing scalable, reliable, and cost-effective cloud storage for wedding photos.
Image properties
Each image in the gallery has associated metadata:Core properties
Unique identifier for the image
The wedding event this image belongs to
The S3 object key (filename) used to retrieve the image from cloud storage
Controls whether the image is displayed in the gallery. Couples can hide images they don’t want to show.
Timestamp when the image was uploaded
Retrieving event photos
The gallery displays all photos for a specific event. Users request images by event ID.Get images endpoint
Image service
- Client requests images for a specific event ID
- System queries database for all images associated with that event
- Images are converted to response DTOs
- List of images is returned with metadata
Image response structure
Example response
AWS S3 integration
All images are stored in Amazon S3, which provides:- Scalability: Store unlimited photos without worrying about server storage
- Reliability: 99.999999999% durability with automatic redundancy
- Performance: Fast retrieval and serving of images globally
- Cost-effectiveness: Pay only for storage and bandwidth used
S3 service configuration
The S3 bucket name is configured in application properties. Make sure to set up AWS credentials and configure the correct bucket for your deployment.
Image visibility controls
Couples can control which images appear in the gallery using theisVisible flag. This allows them to curate the photo collection by hiding unwanted images without permanently deleting them.
Visibility use cases
Filtering inappropriate content
Filtering inappropriate content
If a guest accidentally uploads an inappropriate or duplicate photo, the couple can hide it from the gallery without deleting it entirely.
Creating curated galleries
Creating curated galleries
Couples can create a curated selection of their favorite photos by hiding less desirable shots while keeping them in storage.
Temporary hiding
Temporary hiding
Images can be hidden temporarily and made visible again later, providing flexibility in gallery management.
Default visibility
When images are uploaded, they are set to visible by default:Gallery viewing workflow
Here’s how users typically interact with the image gallery:Deleting images
Couples and authorized users can permanently delete images from both the database and S3 storage.Delete endpoint
Deletion service
S3 deletion
- Client requests deletion by image ID
- System retrieves image metadata from database
- Image record is deleted from database
- Image file is deleted from S3 bucket
- Success response is returned
Gallery features
Event-based organization
All images are automatically organized by event, making it easy to browse photos from specific weddings.
Cloud storage
AWS S3 provides reliable, scalable storage that can handle thousands of high-resolution wedding photos.
Visibility controls
Couples can hide images from the gallery without deleting them, allowing for curation and moderation.
Metadata tracking
Each image includes upload timestamp and event association for easy management.
Best practices
Related features
- Image Upload - How photos are uploaded to the gallery
- Events - Managing wedding events that contain galleries
- Authentication - Access control for viewing galleries