✅ Maintainer Checklist
✅ Maintainer Checklist
Use this checklist for reviewing and processing domain requests.
📋 Daily PR Review Checklist
When a New PR Arrives
- 1. Check PR Template Completion
- All fields filled out
- Subdomain specified
- Owner information complete
- Project details provided
- Deployment URL included
- 2. Run Validation
python scripts/validate.py domains/filename.json- No errors
- Warnings reviewed (if any)
- 3. Verify Deployment URL
- Visit the deployment URL in browser
- Site loads without errors
- All pages work
- Assets load correctly (images, CSS, JS)
- Mobile responsive
- No console errors
- 4. Review Content
- Appropriate for educational use
- No illegal content
- No hate speech or discrimination
- No adult/explicit content
- No malware or phishing
- Not spam or scam
- Matches project description
- 5. Check Subdomain Availability
- Not already taken
- Name is appropriate
- No trademark violations
- Not a reserved name
- 6. Verify Contact Information
- Email format is valid
- GitHub username exists
- Name looks legitimate
🔧 DNS Configuration Checklist
Before Adding DNS Record
- 1. Extract Information
- Subdomain:
__________ - Type:
CNAME - Target:
__________
- Subdomain:
- 2. Login to DNS Provider
- Cloudflare Dashboard
- Navigate to iths.online domain
- Go to DNS → Records
- 3. Create CNAME Record
- Type:
CNAME - Name:
[subdomain](without .iths.online) - Target:
[deployment-url] - TTL:
Auto - Proxy:
Proxied(orange cloud ON)
- Type:
- 4. Verify Record
- Record appears in list
- No typos in name or target
- Settings are correct
- 5. Test DNS Resolution
Wait 5-10 minutes, then:
nslookup subdomain.iths.onlineOr use online tools:
- https://dnschecker.org/
- https://www.whatsmydns.net/
💬 Communication Checklist
Comment on PR
Copy and customize this template:
## Review Status: [APPROVED / CHANGES REQUESTED / REJECTED]
### ✅ What's Good
- [List positive points]
### ⚠️ Issues Found (if any)
- [List issues that need fixing]
### 📝 Next Steps
[Instructions for student]
---
**For APPROVED PRs:**
✅ DNS records have been configured!
Your subdomain `subdomain.iths.online` should be active within 24-48 hours
(usually much faster).
**Important:** You must configure the custom domain in your deployment platform:
- Vercel: Settings → Domains → Add domain
- Netlify: Site settings → Domain management
- GitHub Pages: Settings → Pages → Custom domain
Then enable HTTPS/SSL and test your subdomain.
Thank you for your submission! 🎉
🔄 Post-Approval Checklist
After merging PR:
- 1. Update Tracking (optional)
- Log the new subdomain
- Note approval date
- Record owner contact
- 2. Monitor First 24 Hours
- Check if student configures domain
- Respond to any issues
- Help troubleshoot if needed
- 3. Follow Up (after 1 week)
- Verify domain is working
- Check for any abuse reports
- Ensure SSL is enabled
❌ Rejection Checklist
If rejecting a PR:
- 1. Provide Clear Reason
- Explain why it was rejected
- Be specific about issues
- Offer guidance if fixable
- 2. Be Professional
- Use respectful language
- Don’t be harsh
- Encourage resubmission if appropriate
- 3. Common Rejection Reasons
- Inappropriate content
- Site not deployed yet
- Invalid deployment URL
- Duplicate subdomain
- Incomplete information
- Fake contact details
Template for rejection:
## Review Status: REJECTED
Unfortunately, we cannot approve your domain request at this time.
**Reason:** [Specific reason]
**What you can do:**
[Steps to fix the issue]
Feel free to resubmit once the issues are resolved.
Thank you for understanding.
🚨 Emergency Actions
If Abuse is Detected
- 1. Immediate Action
- Remove DNS record
- Delete JSON file from repo
- Block user if necessary
- 2. Document
- Screenshot evidence
- Note date and time
- Record violation type
- 3. Communicate
- Inform user of violation
- Explain policy breach
- State permanent ban if applicable
If DNS Issues Occur
- 1. Diagnose
- Check DNS provider status
- Verify record exists
- Test from multiple locations
- 2. Fix
- Correct any typos
- Adjust settings if needed
- Contact DNS support if required
- 3. Communicate
- Update affected users
- Provide ETA for fix
- Apologize for inconvenience
📊 Weekly Maintenance
Every week:
- Review all new subdomains added
- Check for abuse reports
- Respond to open issues
- Update documentation if needed
- Backup DNS configuration
- Review pending PRs
📈 Monthly Maintenance
Every month:
- Sample test active subdomains
- Remove inactive/abandoned domains
- Generate statistics report
- Review and update policies
- Check GitHub Actions logs
- Update dependencies if needed
Statistics to track:
# Total active subdomains
ls domains/*.json | grep -v examples | wc -l
# Recent additions (last 30 days)
git log --since="30 days ago" --oneline domains/ | wc -l
# Total PRs merged
git log --oneline --grep="Add domain" | wc -l
🎯 Quality Standards
Maintain these standards:
- Response time: < 48 hours
- Approval accuracy: > 95%
- User satisfaction: Monitor feedback
- Documentation quality: Keep updated
- Security: Regular audits
🆘 Getting Help
If you’re unsure about a submission:
- Review CONTRIBUTING.md guidelines
- Check similar approved PRs
- Consult with other maintainers
- When in doubt, ask for more info from student
💡 Pro Tips
- Batch Processing: Review multiple PRs at once for efficiency
- Templates: Save common responses as templates
- Browser Bookmarks: Quick links to DNS dashboard, validation tools
- Notifications: Enable GitHub notifications for PRs
- Documentation: Keep notes on edge cases and decisions
Remember: Every domain represents a student’s opportunity to build their online presence. Be thorough but encouraging!