⚡ Web & Mobile Engineering: Development, Upgrades, UI/UX Redesigns & 24/7 Operations →
Future TechTeam
About Services Portfolio Contact Admin Panel Get Started
Website Showcase Case Study

Contest Portal

Contest is an enterprise-grade Django web application designed to streamline contestant registration, portfolio submissions, entry fee payments, and administrative evaluation for photography competitions. Built with robust security, automated payment signature verification, strict multi-layered image validation, and a comprehensive master dashboard, it provides a complete end-to-end digital audition workflow.

Engineering Tech Stack
Django RazorPay Python
Contest Portal
Verified Quality
Production Ready
Case Study Overview

Project Implementation & What We Did

Detailed engineering breakdown of challenges, architecture goals, core modules, and delivered client value.

CHALLENGE & CONTEXT

Problem Statement

Traditional photography auditions suffer from fragmented registration workflows, unverified bank transfers, invalid or poor-quality image submissions (wrong pixel dimensions/corrupt files), and a lack of centralized administrative tracking for candidate evaluations.

PRIMARY USERS

Target Audience

Event organizers, jury panels, and aspiring photographers participating in national or regional photo audition contests.

KEY OBJECTIVES

Business Goals & Solution

Automated Monetization: Ensure 100% verified payments via automated gateway webhooks & signature checks prior to submission approval.
Data & Image Integrity: Guarantee high-quality competition portfolios through automated MIME, file size, and pixel dimension validation before images reach the jury.
Operational Transparency: Maintain real-time tracking of contestant statuses, payment logs, and email dispatch records for auditing.
SYSTEM MODULES

Core Implementation Breakdown

01 MODULE 01

Custom User Authentication & Account Management

UUID-based Custom User Model Implemented using AbstractBaseUser with email as the primary identifier instead of standard usernames.
Profile & Role Controls Secure password hashing, password reset mechanisms, user profile updates, and role separation (Contestants vs. Master Admin).
02 MODULE 02

Payment Gateway & Sandbox Simulation

Razorpay Payment Integration Full integration with Razorpay Order API, client-side checkout modal, and server-side HMAC SHA256 signature verification.
Database Row Locking Prevents duplicate transaction processing and race conditions during payment webhook callbacks.
Dynamic Site Settings & Sandbox Fallback Entry fees are dynamically loaded from a database-managed singleton model (
SiteSettings
). If Razorpay keys are omitted, the platform seamlessly runs in offline Sandbox/Simulation mode.
03 MODULE 03

Strict Portfolio Upload & Image Validation Pipeline

Multi-Image Audition Submissions Contestants submit structured portfolio entries with required titles, descriptions, and images.
Validation Checks
File Size & Extensions Enforces < 5 MB limit and restricts allowed extensions (.jpg, .jpeg, .png, .webp).
Deep MIME Inspection Uses Pillow to inspect file binaries and prevent disguised executable uploads.
Pixel Constraints Enforces minimum (600px) and maximum (4000px) pixel dimensions.
04 MODULE 04

Master Admin Dashboard & Jury Evaluation

Centralized Management Console Dedicated admin interface (
master
) for listing contestants, reviewing portfolios, and updating entry approval statuses.
Email Logs & Tracking Complete audit log system (
email_logs.html
) tracking sent transactional emails, dispatch timestamps, and delivery statuses.
05 MODULE 05

Logging & Security Architecture

Isolated Operations Logging Configured separate loggers storing auth activity, payment transactions, image uploads, and runtime exceptions into dedicated files under /logs.
Security Practices CSRF protection, SQL-injection prevention via Django ORM, and secure file handling.
06 MODULE 06

Modern UI/UX Design System

Responsive Bootstrap 5 Theme Styled with modern typography, dynamic loading states, toast notifications, glassmorphism UI elements, and responsive mobile-first layouts.
Case Study Gallery

Detailed Screen Showcases

Take an in-depth visual tour of the user interfaces, dashboards, and key components built for this project.

Contest Portal
Contest Portal
Contest Portal
Message Sent!
We'll get back to you shortly.