Skip to main content
partylab
54 features

Everything you need to collect every guest photo

One link. No app. Instant uploads. PartyLab is packed with features that make photo collection effortless for guests and hosts alike.

📸

Instant Photo Collection

QR code sharing

Every event gets a unique QR code. Print it, project it, or text the link — guests scan and upload instantly.

No app, no sign-up for guests

Guests upload from any phone browser. No account creation, no download, no friction.

Multi-file upload

Guests can select and upload multiple photos and videos in a single session.

Drag-and-drop on desktop

Desktop guests can drag files straight onto the upload button without opening the file picker.

Upload progress & celebration

Per-file progress bars and a confetti-style done state keep guests delighted during upload.

Upload window control

Set how long the upload window stays open. Reopen it any time with 1, 3, 7, or 30 extra days.

🖼️

Live Gallery

Real-time updates

The guest gallery polls every 4 seconds — photos appear live as guests upload from around the venue.

Live activity toast

A branded notification slides up when another guest uploads: “Emma just uploaded 3 photos!”

Lightbox navigation

Full-screen lightbox with keyboard arrows, swipe on mobile, and preloaded adjacent images for instant flicking.

Gallery sort controls

Sort by Newest, Oldest, or Most Liked. The Most Liked tab appears automatically once reactions exist.

My photos filter

Guests who uploaded can tap ‘My photos’ to see only their contributions across sessions.

Photo download

Guests can download individual photos from the lightbox. ‘Download my photos’ exports a ZIP of their uploads.

📺

Live Slideshow

Full-screen display mode

Open the slideshow on a TV or projector. Photos advance automatically every 5 seconds as guests upload.

Play / pause & navigation

Space/K to pause, arrow keys or J/L to jump. A slide counter shows progress through the gallery.

QR overlay

Press Q or tap the QR button to overlay the event QR code on the slideshow so venue guests can scan to upload.

Video support

Video uploads play inline in the slideshow with the same 5-second dwell before advancing.

Auto-dimming UI chrome

Controls fade after 3 seconds of inactivity and reappear on any mouse move or touch.

💬

Digital Guestbook

Photo captions

Guests can attach a personal message to each photo upload — a digital guestbook baked right into the gallery.

Caption display

Captions appear as a speech-bubble indicator on grid thumbnails and as italic quoted text in the lightbox.

Photo reactions

Guests heart-react to their favourite photos. Reactions persist via localStorage so likes survive page refreshes.

Like leaderboard

The analytics page shows the most-liked photos as a visual highlight reel the host can relive.

👤

Host Dashboard

Event creation with templates

6 event-type templates (Wedding, Birthday, Baby Shower, Graduation, Corporate, Other) pre-fill a welcome message and name placeholder.

Cover image upload

Upload an event cover image that appears on the guest page and in social share previews.

Recent photo preview

The event dashboard shows the last 6 uploads as thumbnails so hosts can see activity at a glance.

Per-photo management

Hosts can delete individual photos with an inline confirmation, or bulk-select and delete multiple at once.

Duplicate event

Clone an event with one click for recurring occasions — the duplicate opens in Settings to update the date.

Post-creation onboarding

After creating an event, a quick-action card guides hosts through Preview, Print QR, and Launch slideshow.

📊

Event Analytics

Upload timeline

An hourly bar chart shows when photos arrived, revealing the peak activity windows of your event.

Top uploaders leaderboard

A ranked list of your most active guests with proportional contribution bars.

Most liked photos

A trophy-ranked visual grid of the photos with the most reactions from guests.

Live activity feed

The dashboard overview streams the 12 most recent uploads across all active events, refreshing every 10 seconds.

✉️

Email Notifications

Welcome email

New hosts receive a branded welcome email on signup.

First upload alert

Hosts are notified the moment the first guest photo arrives.

Milestone emails

A celebration email fires at 10 photos. A FREE-tier urgency email fires at 25 photos.

Pre-event reminder

Hosts receive a reminder email the morning of their event with the guest link prominently displayed.

Post-event summary

24 hours after the upload window closes, hosts get a summary of photos collected and upgrade nudge.

Gallery expiry warning

Free-tier hosts receive a 7-day expiry warning email with a direct upgrade link.

📣

Guest Sharing & Outreach

Native share sheet

The Share button opens the OS share sheet on mobile with a pre-composed invitation message.

WhatsApp direct share

A WhatsApp button opens a pre-filled message with the event link, ready to paste into any group chat.

Copy invite message

One click copies a friendly multi-line invitation to the clipboard, ready to paste anywhere.

Email guests directly

Paste comma-separated email addresses and send branded invitations to up to 50 guests per batch.

Guest thank-you email

When a guest leaves their email, they automatically receive a thank-you email with the gallery link.

💳

Billing & Plans

Free forever plan

Create events for free with up to 30 photos, a 7-day upload window, and a 30-day gallery retention.

One-time $19 Event plan

Pay once per event for unlimited photos, a 30-day upload window, and 1-year gallery retention.

Stripe checkout

Secure one-time payment via Stripe. No subscription, no monthly commitment.

Instant upgrade

Upgrade directly from the event dashboard. The paid window and gallery extend immediately after payment.

ZIP export (PAID)

Download all READY photos and videos as a ZIP archive from the host dashboard.

Guest email list + CSV (PAID)

Export a CSV of guest emails collected at your event for follow-up marketing.

🔒

Security & Privacy

Host ownership enforcement

Every host-mutating API returns 401 for anonymous callers and 403 for non-owners.

Unguessable storage keys

All media is stored under nanoid-generated paths — not sequential IDs — preventing enumeration.

Upload rate limiting

Guest uploads are capped at 30 requests per IP per event per 10 minutes to prevent abuse.

Input sanitisation

Uploader names and captions are stripped of HTML tags before being stored.

GDPR cookie consent

GA4 analytics only loads after explicit cookie consent. Consent is stored in localStorage and honoured on every visit.

Automatic media cleanup

When a free-tier gallery expires, all R2 media files are deleted automatically by a daily cron job.

Ready to collect every moment?

Free to start. Upgrade any event for $19 — one-time, no subscription.

No credit card required to start • Up to 30 guest photos free