Case Study
Project Case Study
Challenges, solutions, outcomes, technical highlights, architecture, and project scale.
⚡
Challenges
- Need for a professional personal website with advanced animations
- Designing a comprehensive Launch Broker form with 6 different sections
- Seminar ticket management system with two payment methods
- Sending HTML email with complex design and QR Code
- Crypto (USDT-TRC20) and Stripe payment integration
- State_city and geographic data management
- Need for SMS authentication system
- Managing different access levels
💡
Solutions
- Designing personal website with Fullpage Slider and AOS animations
- Implementing multi-step Launch Broker form with 6 sections (applicant info, project profile, execution model, platform, payment, notes)
- Ticket management system with two payment methods (Crypto, Stripe)
- Designing responsive HTML email template with QR Code
- Crypto and Stripe payment gateway integration
- Implementing Custom User Model with complete banking fields
- Using Ghasedak API for SMS sending
- Implementing access level system (superuser, regular user)
- Generating Word files with python-docx and Excel with xlwt
📚
Outcomes
- Professional and modern personal website
- Comprehensive Launch Broker application form
- Seminar ticket management system
- Dual payment methods (Crypto and Stripe)
- Beautiful HTML email with QR Code
- User and transaction management panel
- SMS authentication system
- Responsive and modern design
🔧
Technical Highlights
- Django 5.2.7 and Python 3
- MySQL database with pymysql
- persiantools and jdatetime for Jalali date
- python-docx for Word file generation
- xlwt and openpyxl for Excel file generation
- pandas and numpy for data processing
- sorl-thumbnail for image optimization
- Flask for auxiliary services
- python-telegram-bot for Telegram bot
- Ghasedak API for SMS sending
- Custom User Model with banking fields
- Crypto (USDT-TRC20) and Stripe payment
- Responsive HTML email with QR Code
- Fullpage Slider and AOS animations
- SMS and password authentication system
🏗️
Architecture
Hamed Hayali project is built on Django's MVT (Model-View-Template) architecture and consists of two main applications:
1. account: Responsible for user management and authentication
- Custom User model with complete banking fields
- Gender, user type (real/legal), upstream code fields
- SMS and password login system
- Excel (xlwt) and Word (python-docx) file generation
2. site_profile: Responsible for admin panel and internal pages
- State_city model for storing geographic information
- dashboard view for admin panel
- broker view for managing broker launch requests
- crypto view for managing crypto transactions
- stripe view for managing Stripe transactions
- email view for sending seminar ticket emails
- page_404 view for error page
Main project views:
- index: Homepage with Fullpage Slider
- lunchbroker: Broker launch request form
- privacypolicy: Privacy Policy page
- termsofuse: Terms of Use page
The project runs in DEBUG mode and uses SQLite for development and MySQL for production.
📐
Project Scale
- 2 main applications (account, site_profile)
- 2 main data models (User, State_city)
- 4 main website pages
- 5 internal admin panel pages
- Comprehensive Launch Broker form (6 sections)
- Dual payment system (Crypto, Stripe)
- Responsive HTML email
- Fullpage Slider and professional animations