Skip to main content

MVP v1 Scope โ€” Frontpics Image Marketplace

What MVP v1 Isโ€‹

A working, deployable platform that lets photographers upload and sell real estate images to agents/buyers using a credit system, with basic admin oversight. Everything is production-ready in structure but minimal in feature scope.

Target deployment: Single VPS with Docker
Target scale at launch: ~5,000 images, ~500 users
Design ceiling: 100,000+ images/year, growing user base Language support: In the beginning Finnish, English, Swedish. Make possible to extend lang support.


In Scope โ€” Phase 1 MVPโ€‹

Buyer / Agent Portalโ€‹

  • Register and log in (email + password)
  • Browse images in grid view with filters (city, tags, is_drone, price range)
  • Full-text search across title, description, tags
  • Preview image (watermarked medium resolution)
  • View image detail page (metadata, EXIF, location, license info)
  • Purchase image with credits (deducted from wallet)
  • Download purchased image (signed URL, original or large variant)
  • Buyer dashboard: purchase history, downloads

Photographer Portalโ€‹

  • Register and log in
  • Bulk upload images (up to 50 per batch via presigned R2 URLs)
  • Set metadata per image: title, description, location, tags, price, license, is_drone
  • Edit and delete own images (before approval or if no purchases)
  • View earnings summary (credits earned, pending payout)
  • Request payout (manual review by admin in MVP)

Admin Portalโ€‹

  • View platform stats dashboard (users, images, orders, revenue)
  • Manage users: list, view, suspend, change role
  • Image moderation queue: review, approve, reject with a note
  • View all orders and transactions
  • Manage license types (CRUD)
  • Manage tags (CRUD)
  • View audit logs

Core Platformโ€‹

  • JWT authentication with refresh tokens
  • Email verification on registration
  • Password reset via email
  • Role-based access control (buyer, photographer, admin)
  • Credit wallet per user (balance, top-up by admin in MVP; Stripe in Phase 2)
  • Image processing pipeline: extract EXIF, generate 4 variants (thumbnail, medium, large, watermarked), upload to R2
  • Cloudflare R2 for storage, Cloudflare CDN for delivery
  • Audit log of all sensitive actions
  • Docker-based deployment with blue/green strategy on VPS
  • GitHub Actions CI/CD pipeline

Out of Scope for MVP v1โ€‹

FeatureTarget Phase
Map/geo browsing (PostGIS + MapLibre)Phase 2
Stripe payment integration for creditsPhase 2
OAuth (Google login)Phase 2
Photographer analytics dashboardPhase 2
Email notifications (transactional)Phase 2
Advanced search / faceted filtersPhase 2
Collections / albumsPhase 3
Bulk ZIP downloadPhase 3
OpenSearch / ElasticsearchPhase 3
Photographer subscription tiersPhase 3
API rate limiting / abuse preventionPhase 3
Multi-language supportPhase 3
Mobile appPost-Phase 3

MVP Success Criteriaโ€‹

  1. A photographer can create an account, upload a batch of drone images with metadata, and have them appear in the marketplace after admin approval.
  2. A buyer can discover an image via search, preview it watermarked, purchase it with credits, and download the original.
  3. An admin can review the moderation queue, approve images, manage users, and see basic platform stats.
  4. The system handles 100 concurrent users without degradation.
  5. The CI/CD pipeline automatically builds and deploys on every push to main with zero-downtime switchover.
  6. All images are served via Cloudflare CDN with no origin traffic for public assets.