FOR THE NERDS

Technical Specifications

How we deliver galleries faster and better than the competition

Why Gallery Speed Actually Matters

Over 70% of users abandon photo galleries that take more than 3 seconds to load.

When a client opens your gallery and waits 1-2 seconds per image (typical for SmugMug), they're not thinking about your photography—they're thinking about how slow your delivery is.

That matters. A lot. Because your clients remember two things: your photos, and how they got them.

Our Infrastructure Stack

Image Delivery: Cloudinary

We use Cloudinary's enterprise-grade image CDN—the same infrastructure powering Netflix, Spotify, and major media companies.

  • Multi-CDN architecture: Automatic routing across Akamai, Fastly, and Cloudflare networks (thousands of edge servers globally)
  • Smart compression: Content-aware algorithms that preserve details where they matter most
  • Next-gen formats: Automatic WebP/AVIF delivery (25-50% smaller than JPEG) with intelligent fallbacks
  • Photography-grade quality: q_auto:best setting specifically designed for high-quality photography

How We Compare

FeaturekhromeSmugMugPixiesetZenfolio
Multi-CDN delivery✅ 3 CDNs❌ 1 CDN❌ 1 CDN❌ Storage-focused
Next-gen formats (WebP/AVIF)✅ Auto
Content-aware compression
Photography-grade quality✅ q_auto:best⚠️ Generic⚠️ Generic⚠️ Generic
Global edge servers✅ Thousands⚠️ Hundreds⚠️ Hundreds⚠️ Variable
Typical load time<3 sec1-2 sec/imageSlow uploadsVariable

*Competitor data based on user reports and public infrastructure disclosures (2025).

Application Stack

Frontend

  • • Next.js 15 (React 19)
  • • Server Components for optimal performance
  • • Tailwind CSS for design system
  • • Radix UI for accessible components

Backend

  • • Prisma ORM with PostgreSQL
  • • NextAuth.js for authentication
  • • Upstash Redis for caching
  • • Vercel Edge Network for API routes

Storage & Media

  • • Cloudinary for images (CDN + DAM)
  • • PostgreSQL for metadata
  • • Multi-region redundancy

Deployment

  • • Vercel Edge Network
  • • Automatic HTTPS & DDoS protection
  • • Global edge caching
  • • Zero-downtime deployments

Security & Reliability

  • Encryption: TLS 1.3 for all data in transit, AES-256 for data at rest
  • Authentication: OAuth 2.0, magic links, and email verification
  • Password security: Argon2id hashing (OWASP recommended, memory-hard algorithm)
  • Multi-tenant isolation: Database-level tenant separation
  • Uptime: 99.9% SLA backed by Vercel and Cloudinary infrastructure

Technical FAQ

Why Cloudinary over a custom solution?

Cloudinary has spent 15+ years optimizing image delivery for billions of images. Their multi-CDN architecture, content-aware compression, and photography-grade quality settings (q_auto:best) are specifically designed for high-quality photography. Building this ourselves would take years and millions of dollars—and still wouldn't match their global infrastructure.

Could competitors just copy your stack?

Sure—Cloudinary is publicly available. But migration is expensive (millions of images), and most legacy platforms have organizational inertia. More importantly, our competitive advantage isn't just infrastructure—it's product design, UX refinement, and feature integration. Stack transparency builds trust; we're confident in our execution.

What about image quality degradation?

Cloudinary's q_auto:best setting uses less aggressive compression algorithms specifically for photography sites. The result is larger file sizes than generic compression, but visually indistinguishable from originals—even at 100% zoom. We've tested this extensively with wedding and portrait photographers; the quality loss is imperceptible.

How do you measure "under 3 seconds"?

We measure Time to Interactive (TTI)—the point where your client can start viewing images. This includes DNS lookup, TLS handshake, HTML download, and first contentful paint. Our testing uses real-world networks (3G, 4G, broadband) across major geographic regions (North America, Europe, Asia-Pacific). Competitors often report 1-2 seconds per image; we deliver the entire gallery in under 3 seconds total.

See it in action

Infrastructure is only impressive if it delivers results. Try khrome and feel the difference yourself.