explaingit

backupdrill/cli

Analysis updated 2026-05-18

1TypeScriptAudience · ops devopsComplexity · 3/5Setup · moderate

TLDR

A command-line tool that backs up your Supabase database and files directly to your own S3-compatible storage, with checksums so you can verify the backup is complete and correct.

Mindmap

mindmap
  root((repo))
    What it does
      Backs up Supabase projects
      Saves to your S3 bucket
      Creates checksum manifests
      Streams directly no middleman
    Why it exists
      Supabase restore misses files
      Paid plans keep 7 days only
      No self-hosted backup export
    How to run
      Needs Node 20 plus
      Requires pg_dump installed
      Config via env or flags
    Cost awareness
      Estimate command checks size
      Egress fees apply on backup
      Weekly for large projects
    Hosted service
      Scheduling and alerts
      Restore drills test backups
    Tech stack
      TypeScript
      Node.js
      pg_dump

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 a Supabase project's database and Storage files to your own S3 bucket on a schedule you control.

USE CASE 2

Verify that a backup captured every file by checking the manifest checksums.

USE CASE 3

Estimate monthly egress costs before committing to a daily or weekly backup routine.

USE CASE 4

Run restore drills through backupdrill.com to confirm your backups actually work.

What is it built with?

TypeScriptNode.jspg_dumpS3-compatible storage

How does it compare?

backupdrill/cli0xkinno/neuralvault0xmayurrr/ai-contractauditor
Stars111
LanguageTypeScriptTypeScriptTypeScript
Setup difficultymoderatehardeasy
Complexity3/54/52/5
Audienceops devopsdeveloperdeveloper

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

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires Node.js 20+, a local pg_dump version matching your Supabase Postgres version, and S3 bucket credentials.

The explanation does not mention a license, so the terms of use are unknown.

In plain English

Backupdrill is a command-line tool that backs up a Supabase project to an S3-compatible storage bucket you control. It captures both the Postgres database and Storage files together, and creates a manifest file with checksums so you can verify exactly what was backed up. The data streams directly from your machine to your bucket without passing through any intermediate server. The tool exists because Supabase's built-in restore only recovers metadata about Storage files, not the actual files themselves. Supabase's paid plans also keep backups for only seven days and do not let you pull them into your own infrastructure. A database dump you have never actually restored is just a guess, and this tool aims to make backups verifiable. To run it, you need Node.js 20 or higher and a version of pg_dump that matches or exceeds your Supabase Postgres version. You install the tool globally with npm or run it directly with npx. Configuration works through environment variables, a config file, or command-line flags, with flags taking the highest priority. You provide a database connection string from your Supabase dashboard, destination bucket credentials, and optionally Storage access keys if you want file backups included. The tool also provides an estimate command that measures your database and Storage size and projects the monthly egress cost. Backing up pulls data out of Supabase, which counts against your egress allowance. For Pro plans, Supabase includes 250 GB per month, and overage costs about $0.09 per gigabyte. A 50 GB project backed up daily would cost roughly $112 per month in egress alone, so weekly schedules are recommended for larger projects. The hosted service at backupdrill.com adds scheduling, restore drills that test whether your backup actually works, alerts, and reports. The CLI is the do-it-yourself layer underneath that service. The full README is longer than what was shown.

Copy-paste prompts

Prompt 1
I want to back up my Supabase project to my own S3 bucket using backupdrill. Walk me through the environment variables and command-line flags I need to run a full backup of both the database and Storage files.
Prompt 2
Help me use the backupdrill estimate command to calculate the monthly egress cost for my 50 GB Supabase project if I back it up daily versus weekly.
Prompt 3
I have a backupdrill manifest file with checksums from a recent Supabase backup. How do I verify that all database rows and Storage files in the backup match the manifest?
Prompt 4
Compare backupdrill's CLI backup with Supabase's built-in backup and restore. What does backupdrill capture that Supabase's restore misses, and how do the checksums help me trust the backup?
Prompt 5
I have Node.js 20 installed and pg_dump matching my Supabase Postgres version. Give me the exact npx command to run a one-time backupdrill backup to a Backblaze B2 bucket.

Frequently asked questions

What is cli?

A command-line tool that backs up your Supabase database and files directly to your own S3-compatible storage, with checksums so you can verify the backup is complete and correct.

What language is cli written in?

Mainly TypeScript. The stack also includes TypeScript, Node.js, pg_dump.

What license does cli use?

The explanation does not mention a license, so the terms of use are unknown.

How hard is cli to set up?

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

Who is cli for?

Mainly ops devops.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.