google-backup
v2.0.3
Published
[![NPM Version](https://img.shields.io/npm/v/google-backup)](https://npmjs.com/package/google-backup) [![Build & Publish NPM Package](https://github.com/WeeJeWel/node-google-backup/actions/workflows/npm-publish.yml/badge.svg)](https://github.com/WeeJeWel/
Downloads
11
Readme
Google Backup
This module automatically downloads your Google Mail, Contacts & Calendar to separate files. It'll sync only new Mails, Contacts & Events.
This tool will output the following directory structure:
.
├── Contacts
│ └── *.vcf
├── Calendar
│ └── *.ical
└── Mail
├── By ID
│ └── *.eml
├── By Thread
│ └── <...>
│ └── *.eml
└── By Label
├── <...>
│ └── *.eml
└── [Gmail]
├── All Mail
│ └── *.eml
├── Sent
│ └── *.eml
└── <...>
└── *.eml
Note: All e-mail files are symlinked to 'By ID/*.eml'.
Why?
Google makes great services, but there are many horror stories of people locked out of their accounts. So be safe, and keep your data backed up!
Usage
1. Create a Google App Password
Create a Google App Password at https://myaccount.google.com/apppasswords.
2. Run
Node.js
If you have Node.js already installed, run:
$ npx -y google-backup \
--username "[email protected]" \
--password "abcd efgh ijkl mnop" \
--filepath "~/Backups/Google/"
Hint: You can schedule this in a cronjob for automated backups.
Docker
If you prefer Docker, this is an example how to run:
$ docker run \
--env GOOGLE_BACKUP_USERNAME="[email protected]" \
--env GOOGLE_BACKUP_PASSWORD="abcd efgh ijkl mnop" \
--env GOOGLE_BACKUP_FILEPATH="/backups" \
--volume="~/Backups/Google/:/backups/" \
ghcr.io/weejewel/google-backup