Projects
Web App • Completed01

Pranathi 2k26 Registration App

Full-stack Django registration platform for Pranathi 2k26 - the annual cultural fest of Jyothy Institute of Technology - with Razorpay payments, QR check-in and team management.

Overview

A full-stack Django web application for managing Pranathi 2k26 - the annual cultural fest of Jyothy Institute of Technology. The platform handles 500+ participant registrations, team formations, Razorpay payment integration, QR-based check-in, and comprehensive admin management through Django admin.

The Problem

Manual paper-based registration process for a 2-day college event with 500+ participants across 30+ events; complex team event management requiring dynamic team sizes (2-member depending on event type); no automated payment verification - manual bank transfer reconciliation was time-consuming; schedule conflicts when multiple team members registered for overlapping events; slow check-in process without digital attendance system; difficulty in bulk communication with registered participants.

Approach

  • Designed normalized Django models with foreign key relationships (User -> Registration -> Event -> Category), implementing a state machine for registration status (pending_verification -> pending_payment -> confirmed).
  • Integrated Razorpay API with order creation, webhook handlers with HMAC SHA256 signature verification, and automatic retry logic for failed payments.
  • Built QR code generation using the qrcode library linked to unique registration IDs, with barcode scanning for instant check-in and a real-time attendance dashboard.
  • Extended Django admin with custom list_filters, search_fields, inline scheduling, date-based exports via pandas, and bulk email campaign functionality.
  • Developed responsive mobile-first UI with Tailwind CSS, GSAP scroll-triggered animations with CustomEase, and glassmorphism navigation with mesh gradient backgrounds.

Technical Stack

LayerTechnology
BackendDjango 4.2, Python 3.11
ORMDjango ORM with SQLite3 (dev), PostgreSQL 15 (prod)
FrontendHTML5, Tailwind CSS 3.x, JavaScript ES6+, GSAP 3.12
PaymentsRazorpay API v2 (orders, payments, webhooks)
QR Codesqrcode library, Html5-Qrcode scanner
DeploymentGunicorn, Nginx, Ubuntu 22.04 LTS VPS

What I learned

  • Designing and implementing normalized database models with Django ORM, including custom User model with USN validation.
  • Payment gateway integration with proper security (webhook signature verification, idempotency handling).
  • Creating QR code generation and barcode scanning systems for event check-in.
  • Building responsive layouts with Tailwind CSS utility classes.
  • Creating complex GSAP animation timelines with ScrollTrigger and CustomEase.
  • Deploying Django applications to production VPS with Nginx as reverse proxy and Gunicorn workers.
  • Managing PostgreSQL databases - migrations, backups, restoration from production dumps.
  • Environment-based configuration management using python-decouple.
  • Extending Django admin with custom ModelAdmin classes for better UX.