LexxyVault is a simple CLI tool for backup and restoration using Google Cloud Storage.
🤖 AI Experiment: The 2026 commits were generated using Gemini 3 Flash via Gemini CLI to evaluate how well it handles contributing to an existing codebase. Blog post to follow.
- Zero-Knowledge Encryption: Optional AES-256-CBC encryption using
scryptkey derivation. Your files are encrypted locally before upload. - Smart Storage: Automatically organizes backups into user-specific folders using your system username.
- Incremental Backups: Uses file hashing to detect changes and only upload modified files, saving bandwidth.
- Task Automation: Easy-to-use scheduling system with a background daemon for hands-off backups.
- Simple Setup: No complex login systems—just use your Google Cloud Service Account key.
npm install
npm run buildLexxyVault requires a Google Cloud Service Account key (.json file) with "Storage Object Admin" permissions.
- Place your key file on your machine.
- Set the environment variable or use the tool to configure it:
export GOOGLE_APPLICATION_CREDENTIALS="/path/to/your/key.json"
Simply run the tool without arguments to open the visual menu:
npm start# Backup a folder with encryption
lexxy backup --paths ./my-data --encrypt# Set your default bucket or create a new one
lexxy bucket create
lexxy bucket use <bucket-name># Add a new cron-based schedule
lexxy schedule add
# Run the background worker to execute tasks
lexxy schedule daemon# List all files you have backed up
lexxy restore list
# Restore everything to a specific folder
lexxy restore all --output ./restored-data