Live demo

One gallery system, three audiences

The same platform runs this site's public portfolio shelf, the wedding-day photo collection, and the family's private albums. Who sees what is decided per invitation — a grandparent opens a plain link that just works, a wedding guest lands with upload rights to exactly the galleries they should touch, and the internet sees only what was deliberately put on the shelf.

The family galleries below are fictional stand-ins — their real counterparts staying private is the feature being demonstrated.

Try it as…

Switch who you are and watch the shelf change.

The public shelf

Curated favourites the whole internet may see — the ones on the homepage.

photos view only

Wedding day

Not for visitors — this one belongs to the wedding.

Wishes wall photos

Not for visitors — this one belongs to the wedding.

Summer in Kraków

Not for visitors — this one belongs to the family.

Cabin week

Not for visitors — this one belongs to the family.

1 of 5 galleries open to you.

The public shelf — the real one

These are actual photos from the live system, marked public on purpose. Tap through; arrow keys work in the viewer.

What happens to an upload

Every file lands in a processing pipeline before anyone sees it — so grandparents on hotel Wi-Fi never wait for a 12 MB original.

Photos · Sharp

Original kept with its EXIF story; a 1920 px viewing copy and a 400 px thumbnail are generated for browsing.

Videos · FFmpeg

Re-encoded to streamable H.264 with HTTP range support (seeking just works), plus a few-second hover preview.

Access · per invitation

Every session carries its gallery permissions — checked on every image request, not just on the page.