Back to feed

hiteshchoudhary/gitbackup

hiteshchoudhary/gitbackup
261
+24/day
14
TypeScript

It was personal script but now it is a complete desktop application to take backup of your github account

From the README

GitBackup

A desktop application to back up all your GitHub repositories locally and optionally to cloud storage (AWS S3 / Cloudflare R2).

Features

  • One-click GitHub backup — Enter your Personal Access Token and back up all repositories with full code and branches
  • Smart incremental updates — First run clones everything; subsequent runs only fetch changes
  • Flexible repo selection — Filter by owned, organization, starred, forked, or collaborator repositories
  • Cloud storage support — Upload compressed .tar.gz archives to AWS S3 or Cloudflare R2
  • Scheduled backups — Set daily, weekly, or monthly automatic backups with system tray support
  • Rate limit aware — Handles GitHub API pagination and rate limits for accounts with 200-300+ repos
  • Concurrent processing — Configurable parallelism (1-10 repos at a time) for faster backups
  • Real-time progress — Detailed per-repo status tracking with live log viewer
  • Secure — Token stored encrypted locally, cleaned from git remote URLs after operations

Screenshots

Setup

Configure your GitHub token, backup folder, and optional cloud storage with a guided setup flow.

Repositories

Browse and select repositories with filters for owned, org, starred, forked, and collaborator repos.

Backup

Monitor real-time progress with per-repo status, progress bars, and a detailed log viewer.

Download

Download the latest version for your platform from the Releases page.

| Platform | File | Notes | |----------|------|-------| | macOS | GitBackup-x.x.x.dmg | Open the .dmg and drag GitBackup to Applications. On first launch, right-click → Open to bypass Gatekeeper. | | Windows | GitBackup-Setup-x.x.x.exe | Run the installer. Windows Defender may show a warning — click "More info" → "Run anyway". | | Linux | GitBackup-x.x.x.AppImage | Make it executable: chmod +x GitBackup-*.AppImage then run it. |

Prerequisite: Git must be installed on your system. GitBackup uses it to clone and update repositories.

Creating a GitHub Token

You'll need a Personal Access Token to connect your account:

  1. Go to github.com/settings/tokens
  2. Click Personal access tokensTokens (classic)
  3. Click Generate new token (classic)
  4. Select scopes: repo (full access) and read:org (for org repos)
  5. Click Generate token and paste it into the app

Fine-grained tokens also work — grant Repository access → All repositories.

Building from Source

Prerequisites

Installation

git clone 
cd gitbackup
npm install

Development

npm run dev

This starts the Vite dev server with hot reload and launches the Electron app.

Build & Package

# Build for current platform
npm run package

# Platform-specific builds
npm run package:mac
npm run package:win
npm run package:linux

Packaged apps are output to the `release