Photography is about capturing moments and emotions. Your website should reflect that artistry while being functional, elegant, and professional.
We built a demo website for Lens & Light Photography using Django, Python’s powerful web framework. The result? A sophisticated, gallery-focused website with a striking black, white, and gold color palette that showcases photography portfolios, manages bookings, and demonstrates your expertise.
View the live demo: lens-and-light.cosmoswebtech.com.au →
Why Django for Photography Websites?
For the Lens & Light Photography demo, we needed a framework that delivers:
- Powerful backend - Manage galleries, portfolios, and client sessions
- Database-driven content - Store thousands of photos and client information securely
- Admin interface - Easy content management without technical skills
- Security - Built-in protection for sensitive client information and galleries
- Scalability - From single photographer to studio with multiple photographers
- Gallery optimization - Serve high-quality images efficiently
- Client features - Proofing galleries, galleries with passwords, download management
Django is used by major photographers and creative studios worldwide.
The Performance Numbers
Build Output:
Static assets: ~220KB (CSS, JS, images)
Pages: Server-rendered with caching
Image serving: Optimized with CDN
Database: Queries optimized for performance
Dev Server: under 300ms response time
Build/Deploy: Automated with GitHub
Status: Professional-grade, production-ready
Django’s database and server-side rendering handle complex photo galleries efficiently.
Black, White & Gold: Sophisticated Artistry Design
Photography websites need elegance and sophistication to match the artistry. We designed a premium color palette:
Primary Colors:
- Pure Black (#000000) - sophistication, elegance, contrast
- Crisp White (#ffffff) - clarity, space, simplicity
- Warm Gold (#d4af37) - luxury, warmth, highlights
- Light Gray (#f3f4f6) - subtle, sophisticated
Why black, white, and gold?
Black and white provide the ultimate contrast for showcasing images—your photography becomes the star. Gold accents add luxury and sophistication without overwhelming. Think high-end galleries, luxury brands, fine art.
Typography:
- Headings: Plus Jakarta Sans (modern, elegant, artistic)
- Body: Inter (clean, highly readable, professional)
Sophisticated fonts that don’t compete with photography.
Django Backend: Professional Portfolio Management
Gallery Model Structure
Django models organize photography data:
class Photographer(models.Model):
name = models.CharField(max_length=100)
bio = models.TextField()
specialties = models.ManyToManyField(Specialty)
class Gallery(models.Model):
title = models.CharField(max_length=200)
description = models.TextField()
category = models.ForeignKey(Category, on_delete=models.CASCADE)
photographer = models.ForeignKey(Photographer, on_delete=models.CASCADE)
created_at = models.DateTimeField(auto_now_add=True)
published = models.BooleanField(default=False)
class Photo(models.Model):
gallery = models.ForeignKey(Gallery, on_delete=models.CASCADE)
image = models.ImageField(upload_to='galleries/')
title = models.CharField(max_length=200)
order = models.IntegerField()
This structure supports galleries by photographer, category, and date.
Admin Interface for Easy Management
Django’s built-in admin lets photographers manage content:
@admin.register(Gallery)
class GalleryAdmin(admin.ModelAdmin):
list_display = ('title', 'photographer', 'category', 'published')
list_filter = ('category', 'published', 'created_at')
search_fields = ('title', 'description')
prepopulated_fields = {'slug': ('title',)}
Upload photos, organize galleries, publish—all without touching code.
Client Proofing Galleries
Photographers often need client review galleries with password protection:
class ClientGallery(models.Model):
gallery = models.ForeignKey(Gallery, on_delete=models.CASCADE)
client = models.CharField(max_length=100)
password = models.CharField(max_length=100)
download_allowed = models.BooleanField(default=False)
expiry_date = models.DateField(null=True, blank=True)
Clients access galleries with secure URLs and passwords.
Five Pages That Showcase & Sell
1. Homepage: Your Artistic Vision
The homepage establishes your style:
Hero Section:
Lens & Light Photography
Capturing Moments That Last Forever
The hero features a large, high-quality image (or carousel of signature shots). Below: “Specializing in weddings, portraits, and commercial photography for Sydney’s discerning clients”
Below the hero:
- Featured Galleries - 3-4 recent or best work samples
- Services Offered - Wedding, portrait, commercial, event photography
- Why Choose Lens & Light - Your unique perspective, experience, approach
- Client Testimonials - Quotes with photos and results
- Call-to-Action - “View Portfolio” and “Book a Consultation”
2. Portfolio Page: Gallery Showcase
The portfolio showcases your work by category:
Gallery Categories:
Wedding Photography:
- Full wedding day coverage
- Candid moments and details
- Couple portraits
- Reception highlights
- Post-processing and editing
Featured galleries:
- Sarah & Michael’s Wedding
- Emma & James at Centennial Parklands
- Olivia & Daniel’s Summer Celebration
Portrait Photography:
- Family portraits
- Headshots and professional portraits
- Maternity and newborn sessions
- Senior portraits
- Personal branding photography
Featured galleries:
- The Williams Family
- Corporate Headshots - Tech Startup
- Newborn Memories
Commercial Photography:
- Product photography
- Real estate photography
- Event coverage
- Corporate documentation
- Brand photography
Featured galleries:
- Architecture & Design Portfolio
- Restaurant & Hospitality Photography
- Corporate Events
Each gallery includes:
- Thumbnail preview (grid of 4-6 images)
- Gallery title and category
- Date and location
- “View Full Gallery” link
- Photo count (e.g., “42 photos”)
Gallery View: When clicking a gallery, a full-screen or lightbox view:
- Large image display
- Navigation between photos
- Caption/description for each photo
- Download button (if enabled for client galleries)
- Share buttons for social media
3. Services Page: Clear Offerings & Pricing
The services page details what you offer:
Wedding Photography - $2,500-5,000
- Half-day (6 hours)
- Full day (12 hours)
- Multiple photographer teams
- Engagement session
- All edited, high-resolution images
- Album design consultation
Portrait Sessions - $400-800
- 1-2 hour session
- Outdoor or studio location
- 20-30 final edited images
- Digital delivery
- Print package options
Commercial Photography - Quote
- Product photography ($400-1,000 per day)
- Real estate photography ($300-800 per property)
- Event coverage ($2,000-5,000 per event)
- Corporate documentation (custom pricing)
Add-on Services:
- Engagement session: $300-400
- Album design: $200-500
- Prints and framing: Custom pricing
- Video highlights (weddings): $500-1,500
- Drone photography: Add $300-500
Each service includes:
- Description of what’s included
- Typical session length
- Deliverables (number of images, editing, delivery format)
- Price or “get quote” CTA
- “Book Now” button
4. About Page: Your Story & Expertise
Clients connect with photographers, not just photos:
Your Story:
- How you got into photography
- What draws you to photography
- Your artistic philosophy and approach
- Awards, recognition, or notable work
Specialties & Experience:
- Years in business
- Number of events photographed
- Clients served
- Notable clients or publications
- Photographic awards
Process & Approach:
- How you prepare for shoots
- Your shooting style (artistic vs. journalistic)
- Editing philosophy
- Client communication throughout process
Testimonials:
- Client quotes with photos
- Success stories
- Couples talking about their wedding experience
- Businesses discussing commercial results
Meet the Team (if applicable):
- Associate photographers
- Videographer
- Assistant photographers
- Each with bio and photo
5. Contact & Booking Page
Simple, professional inquiry form:
Left side: Contact form
- Full name, email, phone
- Event type (wedding, portrait, commercial, etc.)
- Event date (if known)
- Location
- Budget range
- Message/special requests
- “Send Inquiry” button
Right side: Contact information
- Phone: (02) XXXX XXXX
- Email: [email protected]
- Address: [Your location]
- Response time: “Typically respond within 24 hours”
- Social media links (Instagram, Facebook, Pinterest)
Consultation Offer: “Book a free 30-minute consultation to discuss your vision”
Django Template System
Django’s template engine manages the gallery display:
{% extends 'base.html' %}
{% block content %}
<div class="gallery-grid">
{% for gallery in galleries %}
<div class="gallery-card">
<img src="{{ gallery.featured_image.url }}" alt="{{ gallery.title }}">
<h3>{{ gallery.title }}</h3>
<p class="category">{{ gallery.category }}</p>
<p class="date">{{ gallery.created_at|date:"M d, Y" }}</p>
<a href="{% url 'gallery-detail' gallery.slug %}" class="view-gallery">
View Gallery
</a>
</div>
{% endfor %}
</div>
{% endblock %}
This flexibility allows for sophisticated gallery layouts and organization.
Image Optimization with Django
Efficient image serving is critical for photography sites:
Using Pillow and imagekit for optimization:
- Generate multiple sizes automatically
- Convert to WebP for modern browsers
- Lazy-load images below the fold
- Serve from CDN for global fast delivery
from imagekit import ImageSpecField
from imagekit.processors import ResizeToFill
class Photo(models.Model):
image = models.ImageField(upload_to='galleries/')
image_thumbnail = ImageSpecField(
source='image',
processors=[ResizeToFill(300, 300)],
format='JPEG'
)
image_display = ImageSpecField(
source='image',
processors=[ResizeToFill(1200, 800)],
format='JPEG'
)
Large images display beautifully without slowing down the site.
What a Real Photography Site Needs
This demo showcases the foundation, but a live photography website needs:
1. Client Proofing System
- Secure password-protected galleries
- Photo tagging and selection
- Download management (limit downloads, quality)
- Print orders directly from proofs
- Expiring gallery links
- Client feedback and notes
2. Booking & Invoicing System
- Online booking with calendar
- Automated invoice generation
- Payment processing (deposit, final payment)
- Contract management
- Delivery timeline tracking
3. Blog & Content
SEO content for photographers:
- Photography tips and tutorials
- Engagement and wedding planning guides
- Real wedding features
- Photography industry insights
- Session preparation guides
4. Video Showcase
Photographers increasingly offer video:
- Highlight reels
- Cinematic wedding films
- Before/after editing examples
- Studio tour
- Client testimonial videos
5. Print & Product Store
Generate revenue from prints:
- Print orders from galleries
- Album designs
- Framing options
- Wall art options
- Digital download options
6. Email Marketing Integration
- Client welcome series
- Session reminders
- Delivery notifications
- Testimonial requests
- Special offers and packages
7. Social Media Integration
- Instagram feed on website
- Pinterest pins
- Social proof badges
- User-generated content gallery
- Share buttons throughout
8. Analytics & Reporting
Understand client behavior:
- Gallery view analytics
- Popular images
- Visitor source tracking
- Conversion tracking (inquiries to bookings)
- Performance insights
SEO for Photography Discovery
When engaged couples or corporate clients search “wedding photographer Sydney” or “commercial photographer,” you need to appear.
Local SEO optimizations:
- Google Business Profile - Portfolio photos, services, location
- Local keywords - “Sydney photographer,” “Parramatta wedding photographer,” suburb names
- Content strategy - Blog about photography drives organic traffic
- Photo SEO - Alt text on images, structured data for images
- Mobile optimization - Photography sites should be beautiful on all devices
For a live site:
- Real wedding features on photography blogs
- Backlinks from wedding planning sites
- Local business directory listings
- Review strategy (Google reviews, wedding site reviews)
- Social media strategy (Instagram, Pinterest)
Hosting & Deployment
Django sites require server infrastructure:
PythonAnywhere (recommended for Django):
- Python hosting built for Django
- Easy deployment
- Free tier available
- Custom domain support
- SSL included
DigitalOcean App Platform:
- Simple Docker-based deployment
- $10-50/month
- GitHub integration
- SSL included
- Scalable
Heroku:
- Simple deployment
- $7-25/month for basic apps
- GitHub integration
- One-click deployment
Monthly hosting cost: $5-50/month
Real Photography Website Pricing
Interested in a professional portfolio website for your Sydney photography business?
Portfolio Package:
- 5 custom pages (Home, Portfolio, Services, About, Contact)
- Gallery showcase with lightbox
- Service descriptions and pricing
- About page with your story
- Contact form
- Mobile-responsive design
- Investment: $4,000 - $6,000
Advanced Package:
- Everything in Portfolio
- Client proofing gallery system
- Online booking integration
- Blog section (5 initial posts)
- Email inquiry form with automation
- Social media integration
- Investment: $7,000 - $10,000
Premium Package:
- Everything in Advanced
- Client portal with secure galleries
- Online payment processing
- Invoice system
- Email marketing integration
- Advanced analytics
- Print store integration
- Professional photography (branding session)
- Investment: $12,000 - $18,000
Ongoing costs:
- Hosting: $10-50/month
- Domain: $20-30/year
- Email marketing: $20-50/month
- Print fulfillment: Variable per order
Timeline: 4-6 weeks from design to launch.
View the Live Demo
Experience the Lens & Light Photography demo:
lens-and-light.cosmoswebtech.com.au →
Try the interactive features:
- Browse portfolio galleries
- View full-screen gallery lightbox
- Check services and pricing
- Read about the photographer
- Try the inquiry form
- Test mobile responsive design (resize browser)
Notice the sophisticated black, white, and gold design that lets your photography shine.
Ready to build a stunning portfolio website for your photography business? Contact Cosmos Web Tech for a free consultation about creating a site that showcases your artistry and books more clients.
📞 0433 309 677 📧 Email us 🏢 Bella Vista, Western Sydney
We build photography websites that showcase your art and drive inquiries—just like this Lens & Light Photography demo.
Your website is one part of a larger digital ecosystem. Ash Ganda explores how businesses can connect web, cloud, and mobile for maximum impact.
Cosmos Web Tech operates under the Ganda Tech Services umbrella, delivering end-to-end technology solutions for Australian businesses.