5.5 KiB
5.5 KiB
Mobile-Desktop Development Workflow Guide
📱➡️💻 Cross-Platform Development with CourseWorx
This guide explains how to seamlessly work on CourseWorx from your mobile device and continue development on your desktop.
🚀 Quick Start Options
Option 1: GitHub Codespaces (Recommended for Mobile)
- From Mobile: Go to your GitHub repository
- Create Codespace: Click "Code" → "Codespaces" → "Create codespace"
- Development Environment: Full VS Code in browser with all tools
- Sync: All changes automatically sync with GitHub
- Continue on Desktop: Open same codespace or pull latest changes
Option 2: Cloud IDE Services
- GitPod:
gitpod.io/#https://github.com/yourusername/courseworx - CodeSandbox: Import GitHub repository directly
- Replit: Connect GitHub repo for instant development
Option 3: Local Development with Git Sync
- Mobile: Use apps like Working Copy (iOS) or MGit (Android)
- Make Changes: Edit files locally on mobile
- Commit & Push: Push changes to GitHub
- Desktop: Pull latest changes and continue
🛠️ Mobile Development Setup
Prerequisites
- GitHub account with repository access
- Stable internet connection
- Modern mobile browser (Chrome, Safari, Firefox)
Mobile-Friendly Development Tools
1. GitHub Codespaces (Best Option)
✅ Full VS Code experience in browser
✅ Built-in terminal and debugging
✅ Extensions support
✅ Automatic environment setup
✅ Direct GitHub integration
2. GitPod
✅ One-click development environment
✅ Docker-based consistent environment
✅ Git integration
✅ VS Code or Theia IDE
3. Mobile Git Clients
- iOS: Working Copy, Git2Go
- Android: MGit, Pocket Git, Git Journal
📋 Workflow Steps
Starting on Mobile
- Access Repository: Open GitHub in mobile browser
- Launch Environment:
- Codespaces: Click "Code" → "Codespaces" → "Create"
- GitPod: Add
gitpod.io/#before your GitHub URL
- Start Development: Make changes using web IDE
- Test Changes: Use built-in preview/terminal
- Commit & Push: Save changes to repository
Continuing on Desktop
- Pull Latest:
git pull origin main - Install Dependencies:
npm run install-all(if needed) - Start Development:
npm run dev - Continue Work: Pick up where you left off
🔄 Synchronization Strategy
Git Workflow
# On Mobile (or Desktop)
git add .
git commit -m "Mobile: Add new feature X"
git push origin feature-branch
# On Desktop (or Mobile)
git pull origin feature-branch
# Continue development
Branch Strategy
- `main`: Production-ready code
- `develop`: Integration branch
- `feature/mobile-work`: Mobile development
- `feature/desktop-work`: Desktop development
📱 Mobile Development Best Practices
1. Touch-Friendly UI
- Ensure button sizes are 44px+ for touch targets
- Test responsive breakpoints
- Optimize for mobile performance
2. Progressive Web App (PWA)
Your CourseWorx already has PWA foundations:
manifest.jsonconfigured- Service worker ready
- Offline functionality possible
3. Mobile Testing
# Test responsive design
npm run dev
# Open http://localhost:3000 on mobile
# Use browser dev tools for mobile simulation
🌐 Environment Configuration
Cloud Development Environment
{
"name": "CourseWorx Mobile Dev",
"dockerFile": "Dockerfile.dev",
"forwardPorts": [3000, 5000],
"postCreateCommand": "npm run install-all",
"extensions": [
"ms-vscode.vscode-typescript-next",
"bradlc.vscode-tailwindcss",
"ms-vscode.vscode-json"
]
}
Mobile Browser Debugging
- Chrome DevTools: Inspect mobile view
- Firefox Responsive Design: Test different devices
- Safari Web Inspector: iOS testing
🔧 Troubleshooting
Common Mobile Development Issues
1. Performance on Mobile
- Limit bundle size
- Use code splitting
- Optimize images and assets
2. Touch Events
- Test touch interactions
- Implement proper swipe gestures
- Handle orientation changes
3. Network Limitations
- Implement offline functionality
- Add loading states
- Use service workers for caching
📊 Recommended Tools Stack
Mobile Development
🔧 Primary IDE: GitHub Codespaces
🌐 Browser: Chrome/Safari (latest)
📱 Testing: Browser DevTools mobile simulation
🔄 Version Control: GitHub Web Interface
📝 Notes: GitHub Issues/Projects
Desktop Development
🔧 Primary IDE: VS Code/Cursor
🖥️ Environment: Local Node.js + PostgreSQL
📱 Testing: Physical devices + emulators
🔄 Version Control: Git CLI/Desktop
📊 Analytics: Local development tools
🎯 Next Steps
- Set up Codespaces: Enable for your repository
- Test Mobile Workflow: Try making a simple change
- Configure Linear: Set up project management integration
- Create Development Branches: Organize mobile vs desktop work
- Set up Notifications: GitHub notifications for collaboration
💡 Pro Tips
- Small Commits: Make frequent, small commits on mobile
- Detailed Messages: Use descriptive commit messages
- Feature Flags: Use environment variables for mobile-specific features
- Testing: Always test on actual mobile devices
- Documentation: Update this guide as workflow evolves
This workflow enables seamless development across devices while maintaining code quality and team collaboration.