explaingit

gaubert/gmvault

Analysis updated 2026-05-18

3,639PythonAudience · generalComplexity · 2/5LicenseSetup · easy

TLDR

A command line tool that backs up and restores your Gmail account to a local folder, so you never lose your email history.

Mindmap

mindmap
  root((repo))
    What it does
      Backs up Gmail
      Restores Gmail
    Tech stack
      Python
      OAuth
    Use cases
      Email archive
      Account migration
    Audience
      Gmail users
      Backup seekers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Back up your entire Gmail account before switching to a new email service.

USE CASE 2

Restore lost emails after accidentally deleting a Gmail account.

USE CASE 3

Keep an offline, searchable archive of your email history.

What is it built with?

PythonOAuth

How does it compare?

gaubert/gmvaultbyt3bl33d3r/mitmflucasjinreal/tensorflow_poems
Stars3,6393,6393,638
LanguagePythonPythonPython
Setup difficultyeasyhardmoderate
Complexity2/54/53/5
Audiencegeneralops devopsresearcher

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 30min
Free to use, modify, and share, but any modified version you distribute must also be open source under the same AGPL license.

In plain English

Gmvault is a command-line tool for backing up and restoring a Gmail account. It connects to your Gmail inbox, downloads all your emails, and saves them to a folder on your computer. If you ever need to move your mail to a different Gmail account or recover from an account problem, you can use the same tool to push those saved emails back up. The tool runs on Windows, Mac, and Linux. On Windows there is a shell launcher included. On other platforms you run it directly from the command line. Installation is available as a prebuilt download from the project website, as a pip install, or from the source code on GitHub. Authentication uses OAuth, which means you authorize the app through Google's standard login flow rather than storing your password in plain text. The token gets saved locally after the first login so you do not have to authenticate again each time. A password-based option also exists for quick testing but the README recommends OAuth as the safer choice. Running a full backup is one command: gmvault sync followed by your Gmail address. An incremental sync option downloads only the emails added or changed since the last run. Backed-up mail is stored in a local directory called gmvault-db by default, with an option to choose a different location. Restoring sends the contents of that directory to any Gmail account you specify, and a resume option lets you pick up where you left off if a previous restore was interrupted. The project is open source under the GNU AGPL 3.0 license.

Copy-paste prompts

Prompt 1
How do I set up gmvault to do a full backup of my Gmail account?
Prompt 2
Show me the gmvault command to restore my backed up emails into a new Gmail address.
Prompt 3
Explain how gmvault's OAuth authentication works and why it is safer than using my password.

Frequently asked questions

What is gmvault?

A command line tool that backs up and restores your Gmail account to a local folder, so you never lose your email history.

What language is gmvault written in?

Mainly Python. The stack also includes Python, OAuth.

What license does gmvault use?

Free to use, modify, and share, but any modified version you distribute must also be open source under the same AGPL license.

How hard is gmvault to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is gmvault for?

Mainly general.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.