A sleek, browser-based GitHub repository management tool featuring drag-and-drop ZIP deployments, branch management, and dual-mode synchronization strategies.
- GitHub Personal Access Token integration
- Secure token masking with visibility toggle
- Automatic user profile fetching
- Browse all your repositories (public & private)
- Real-time search and filtering
- Create new repositories on-the-fly
- Repository visibility indicators
- Switch between existing branches
- Create new branches from any base
- Visual branch selection interface
- Complete repository mirroring - Makes target branch identical to ZIP contents
- Automatically deletes files/folders not present in the ZIP
- Updates existing files with new content
⚠️ Destructive operation - use with caution
- Non-destructive updates - Preserves existing repository structure
- Adds new files from ZIP
- Updates only files with matching names
- Safe for incremental deployments
- Drag & Drop ZIP file upload (max 100MB)
- Collapsible file tree preview of archive contents
- Real-time deployment progress with detailed logs
- Glass-morphism UI with gradient accents
- Responsive design for desktop and mobile
- Save the HTML file to your local machine
- Open in any modern browser (Chrome, Firefox, Safari, Edge)
- Get a GitHub Token:
- Go to GitHub → Settings → Developer settings → Personal access tokens → Tokens (classic)
- Generate new token with
repoandworkflowscopes
- Paste token and click "Connect"
- Select repository and branch
- Choose deployment mode (Full Sync or Partial Update)
- Drop your ZIP and deploy!
Enter your GitHub Personal Access Token in the first step. The token is never stored permanently and only kept in memory during the session.
- Choose an existing repository from the grid
- Or click "New Repo" to create a fresh repository
- Select or create the target branch for deployment
When to use Full Sync:
- Setting up a fresh project structure
- Want complete replacement of repository contents
- Cleaning up old files automatically
When to use Partial Update:
- Updating specific files without touching others
- Adding new components to existing project
- Safe production updates
- Supports standard ZIP archives
- Maximum file size: 100MB
- Preserves directory structure
- Binary-safe base64 encoding
- Frontend: Vanilla HTML5, CSS3, JavaScript (ES6+)
- Styling: Tailwind CSS (via CDN)
- Icons: Lucide Icons
- ZIP Processing: JSZip library
- API: GitHub REST API v3
GET /user- Authentication verificationGET /user/repos- Repository listingPOST /user/repos- Repository creationGET /repos/{owner}/{repo}/branches- Branch listingPOST /repos/{owner}/{repo}/git/refs- Branch creationGET /repos/{owner}/{repo}/git/trees/{ref}?recursive=1- File tree fetchingPUT /repos/{owner}/{repo}/contents/{path}- File upload/updateDELETE /repos/{owner}/{repo}/contents/{path}- File deletion (Full Sync mode)
- Token input type="password" with visibility toggle
- No server-side storage - all operations client-side
- Direct GitHub API communication
- No external data persistence
| Browser | Version | Support |
|---|---|---|
| Chrome | 90+ | ✅ Full |
| Firefox | 88+ | ✅ Full |
| Safari | 14+ | ✅ Full |
| Edge | 90+ | ✅ Full |
Requires ES6 modules, Fetch API, and async/await support
- Rate Limiting: Subject to GitHub API rate limits (5000 requests/hour for authenticated users)
- File Size: 100MB per ZIP file limit
- No Git History: Deployment creates new commits but doesn't preserve ZIP's internal git history
- Single Branch: Cannot deploy to multiple branches simultaneously
"Invalid token" error
- Ensure your token has
reposcope for private repositories - Check that the token hasn't expired
"Failed to delete" warnings in Full Sync
- Some files may be protected or you may lack permissions
- Check repository branch protection rules
Slow deployment
- Large repositories with many files take time due to sequential API calls
- GitHub API has rate limiting - tool includes delays to respect limits