π Hugging Face Spaces Deployment Checklist
β Pre-Deployment Setup
1. MongoDB Atlas Database
- Create MongoDB Atlas account
- Create a new cluster (free tier)
- Create database user with read/write permissions
- Get connection string
- Test connection locally
2. Hugging Face Account
- Create Hugging Face account
- Enable Spaces feature
- Verify account permissions
ποΈ Backend Deployment
1. Create Backend Space
- Go to https://huggingface.co/spaces
- Click "Create new Space"
- Choose "Docker" as SDK
- Name:
your-username/transcreation-backend - Set to "Public" or "Private"
2. Upload Backend Files
- Upload all files from
deploy/backend/ - Verify Dockerfile is in root of Space
- Verify package.json is present
3. Configure Environment Variables
- Go to Settings β Repository secrets
- Add
MONGODB_URI:mongodb+srv://username:password@cluster.mongodb.net/transcreation-sandbox - Add
NODE_ENV:production - Add
PORT:5000
4. Deploy Backend
- Wait for build to complete
- Check logs for any errors
- Test health endpoint:
https://your-username-transcreation-backend.hf.space/health - Test API endpoint:
https://your-username-transcreation-backend.hf.space/api/health
π¨ Frontend Deployment
1. Create Frontend Space
- Go to https://huggingface.co/spaces
- Click "Create new Space"
- Choose "Docker" as SDK
- Name:
your-username/transcreation-frontend - Set to "Public" or "Private"
2. Upload Frontend Files
- Upload all files from
deploy/frontend/ - Verify Dockerfile is in root of Space
- Verify nginx.conf is present
3. Configure Environment Variables
- Go to Settings β Repository secrets
- Add
REACT_APP_API_URL:https://your-username-transcreation-backend.hf.space/api
4. Deploy Frontend
- Wait for build to complete
- Check logs for any errors
- Test frontend URL:
https://your-username-transcreation-frontend.hf.space
π§ͺ Testing
1. Backend Testing
- Health check:
https://your-backend-url/health - API health:
https://your-backend-url/api/health - Database connection working
- CORS headers present
2. Frontend Testing
- Page loads without errors
- Can navigate between pages
- API calls work (check browser console)
- Login functionality works
- All features accessible
3. Integration Testing
- Frontend can connect to backend
- User registration/login works
- Tutorial tasks load
- Weekly practice loads
- Voting system works
- Admin features work (if admin user)
π§ Troubleshooting
Common Issues
Backend Build Fails
- Check Dockerfile syntax
- Verify all dependencies in package.json
- Check environment variables
Frontend Build Fails
- Check React build process
- Verify nginx.conf syntax
- Check environment variables
Database Connection Issues
- Verify MongoDB Atlas connection string
- Check network access settings
- Verify database user permissions
CORS Issues
- Check backend CORS configuration
- Verify frontend API URL
- Check browser console for errors
Environment Variables Not Working
- Verify variable names match exactly
- Check for typos in values
- Restart Space after adding variables
π Support
If you encounter issues:
- Check Hugging Face Spaces logs
- Verify all environment variables
- Test locally with Docker Compose first
- Check MongoDB Atlas connection
- Review browser console for frontend errors
π Success Indicators
- Backend responds to health checks
- Frontend loads without errors
- Users can register and login
- Tutorial tasks and weekly practice load
- Voting system works
- Admin features accessible
- No console errors in browser
- All API endpoints responding
π Final URLs
- Backend:
https://your-username-transcreation-backend.hf.space - Frontend:
https://your-username-transcreation-frontend.hf.space - API Base:
https://your-username-transcreation-backend.hf.space/api
π Notes
- Keep MongoDB Atlas connection string secure
- Monitor Hugging Face Spaces usage limits
- Set up monitoring for both Spaces
- Consider setting up custom domain later
- Regular backups of MongoDB data recommended