Project: Visa/Business Application Website (React, Django, MySQL)
4-Week Development Plan
Week 1: Project Setup + Frontend Structure
Goals:
- Setup React app & Tailwind CSS
- Setup Django project + REST API
- MySQL database connection
- Country/City form frontend & backend
Tasks:
- React project setup (create-react-app or Vite)
- Django REST API boilerplate setup (django-admin, djangorestframework)
- Create models: User, Application, Country, City
- API for listing cities based on selected country
- UI: Country & city selection page
Week 2: Form Flow + OTP Integration
Goals:
- OTP verification
- Document upload
- Business plan form fields
- Backend integration for form data
Tasks:
- OTP system (Firebase or SMS API)
- User registers & verifies OTP
- Input fields for full name, passport number, visa type, business plan
- Document upload support
- Backend APIs to store and fetch this information
Week 3: Payments + Admin Approval
Goals:
- Payment gateway integration
- Admin dashboard for application management
Tasks:
- Integrate payment (Razorpay / Stripe)
- Create Payment model
- Store transaction details
- Django Admin panel: Approve/Reject applications
- Send notification on approval/rejection
Week 4: Dashboard + Testing + Deployment
Goals:
- User dashboard with application status
- Final testing and production deployment
Tasks:
- Dashboard in React showing:
- Application status (Approved/Rejected/Pending)
- Actions based on status (contact shown or offline message)
- JWT Authentication
- Deployment:
- Django backend with Gunicorn + Nginx on VPS
- MySQL setup
- React deployed via Vercel or VPS (npm run build)
Feature & Technology Summary:
| Feature | Tech Used | Week |
|--------------------------------|-------------------------|----------|
| Country to City selection | React + DRF | Week 1 |
| OTP Verification | React + Firebase/API | Week 2 |
| Form + Document Upload | React + DRF + MySQL | Week 2 |
| Business Plan Entry | React + DRF + MySQL | Week 2 |
| Payment Gateway | React + Razorpay/Stripe | Week 3 |
| Admin Panel for Approval | Django Admin | Week 3 |
| Dashboard with Status View | React + DRF | Week 4 |
| Conditional Actions | Django Logic | Week 4 |
| Deployment | Gunicorn + Vercel/Nginx | Week 4 |