Skip to content

Examples

Real-world usage examples for common scenarios.

Personal Documents

Protecting Family Photos

# Create vault for photos
mkdir ~/photos_vault
cd ~/photos_vault

# Add your photos
cp ~/Pictures/family/*.jpg .

# Initialize vault
vaultix init
# Enter strong password

# Photos are now encrypted
ls -la
# drwx------  .vaultix/

# When you need them
vaultix extract vacation_2024.jpg
# Opens or extracts to working directory

Tax Documents

# Annual tax folder
mkdir ~/taxes_2024
cd ~/taxes_2024

# Collect documents
mv ~/Downloads/w2.pdf .
mv ~/Downloads/1099.pdf .
mv ~/Documents/receipts.zip .

# Encrypt everything
vaultix init

# Later, during tax season
vaultix list
# w2.pdf
# 1099.pdf
# receipts.zip

vaultix extract w2
# Work with file

# Done? Remove extract
rm w2.pdf

Professional Use Cases

Source Code Repository

# Proprietary code
mkdir ~/work/private_client_project
cd ~/work/private_client_project

# Initialize git repo
git init

# Add code
echo "const API_KEY = 'secret123'" > config.js
echo "# Client Project" > README.md

# Encrypt repository
vaultix init

# Share encrypted version safely
tar czf project_encrypted.tar.gz .
# Can upload to untrusted storage

# Recipient extracts and decrypts
tar xzf project_encrypted.tar.gz
cd private_client_project
vaultix extract  # Gets all files

API Keys and Credentials

# Credentials vault
mkdir ~/credentials
cd ~/credentials

# Create key files
cat > aws_keys.txt << EOF
AWS_ACCESS_KEY_ID=AKIA...
AWS_SECRET_ACCESS_KEY=secret...
EOF

cat > api_tokens.txt << EOF
GITHUB_TOKEN=ghp_...
STRIPE_KEY=sk_live_...
EOF

# Encrypt
vaultix init

# When deploying
vaultix extract aws_keys.txt
source aws_keys.txt
# Deploy application
rm aws_keys.txt  # Clean up

Client Contracts

# Legal documents
mkdir ~/contracts/client_xyz
cd ~/contracts/client_xyz

# Add signed contracts
cp ~/Downloads/signed_nda.pdf .
cp ~/Downloads/signed_contract.pdf .
cp ~/Downloads/sow.pdf .

# Encrypt
vaultix init

# Reference later
vaultix list
vaultix extract signed_contract.pdf

Development Workflows

Environment Files

# Development project
cd ~/projects/webapp
cat > .env << EOF
DATABASE_URL=postgresql://...
SECRET_KEY=very_secret_key
API_TOKEN=prod_token
EOF

# Encrypt environment file
vaultix add .env

# In .gitignore
echo ".env" >> .gitignore

# Other developers
vaultix extract .env
# Enter password (shared securely)
npm run dev

Configuration Management

# Production configs
mkdir ~/configs/production
cd ~/configs/production

# Create configs
cat > database.yml << EOF
host: prod-db.example.com
user: admin
password: super_secret
EOF

cat > redis.yml << EOF
host: redis.example.com
password: another_secret
EOF

# Encrypt all
vaultix init

# Deploy script
#!/bin/bash
cd ~/configs/production
vaultix extract database.yml
scp database.yml server:/etc/app/
rm database.yml

Private Keys

# SSH keys vault
mkdir ~/.ssh/vaultix_keys
cd ~/.ssh/vaultix_keys

# Add private keys
cp ~/.ssh/client_deploy_key .
cp ~/.ssh/production_key .

# Encrypt
vaultix init

# When needed
vaultix extract client_deploy_key
chmod 600 client_deploy_key
ssh -i client_deploy_key user@server
rm client_deploy_key

Research and Writing

Research Notes

# Research project
mkdir ~/research/project_x
cd ~/research/project_x

# Create notes
vim notes_2024-01-15.md
vim draft_paper.docx
vim references.bib

# Encrypt
vaultix init

# Daily workflow
vaultix extract notes  # Fuzzy match
# Edit notes
vim notes_2024-01-15.md
# Update vault
vaultix add notes_2024-01-15.md

Journal

# Private journal
mkdir ~/journal
cd ~/journal

# Daily entries
date=$(date +%Y-%m-%d)
vim "entry_$date.md"

# Encrypt each entry
vaultix add "entry_$date.md"

# Read old entries
vaultix list | grep 2024-01
vaultix extract entry_2024-01-15.md

Media Management

Video Projects

# Video editing project
mkdir ~/videos/client_commercial
cd ~/videos/client_commercial

# Raw footage (large files)
# Tip: Compress first
tar czf raw_footage.tar.gz footage/
vaultix add raw_footage.tar.gz
rm -rf footage/

# When editing
vaultix extract raw_footage
tar xzf raw_footage.tar.gz
# Edit in your NLE

Music Production

# Unreleased tracks
mkdir ~/music/unreleased
cd ~/music/unreleased

# Add stems and projects
cp -r ~/Production/new_song_project .

# Encrypt
vaultix init

# Collaboration
vaultix extract new_song_project
# Work in DAW
vaultix add new_song_project  # Update

System Administration

Server Backups

# Backup sensitive configs
mkdir ~/backups/server_configs_2024-01-15
cd ~/backups/server_configs_2024-01-15

# Pull configs
scp server:/etc/nginx/ssl/* .
scp server:/etc/app/secrets.yml .

# Encrypt
vaultix init

# Upload to cloud storage (safe when encrypted)
rclone sync . remote:encrypted_backups/2024-01-15/

Password Database

# Offline password backup
mkdir ~/password_vault
cd ~/password_vault

# Export from password manager
# KeePass: File → Export
# 1Password: Export all items
mv ~/Downloads/passwords_export.csv .

# Encrypt immediately
vaultix init

# Delete export
rm ~/Downloads/passwords_export.csv

# Store backup
cp -r ~/password_vault /mnt/backup/

Financial Records

Cryptocurrency Wallets

# Wallet backups
mkdir ~/crypto/wallet_backups
cd ~/crypto/wallet_backups

# Export wallet seeds/keys
cat > btc_wallet.txt << EOF
Seed: word1 word2 ... word12
Private Key: 5K...
EOF

# Encrypt immediately
vaultix init

# Multiple secure locations
cp -r . /mnt/backup1/crypto/
cp -r . /mnt/backup2/crypto/

Investment Records

# Brokerage statements
mkdir ~/finance/investments_2024
cd ~/finance/investments_2024

# Add statements
mv ~/Downloads/*_statement.pdf .

# Encrypt
vaultix init

# Tax time
vaultix extract
# Work with accountant
vaultix clear  # Clean up after tax season

Academic Work

Thesis/Dissertation

# PhD thesis
mkdir ~/phd/thesis
cd ~/phd/thesis

# Working drafts
vim chapter1.tex
vim chapter2.tex
vim references.bib

# Daily backup routine
vaultix init
vaultix add *.tex *.bib

# On different computer
vaultix list
vaultix extract chapter1

Exam Materials

# Exam questions (instructors)
mkdir ~/teaching/cs101/exams
cd ~/teaching/cs101/exams

# Create exam
vim midterm_2024.pdf

# Encrypt until exam day
vaultix init

# Exam day
vaultix extract midterm
# Print and distribute

Healthcare

Medical Records

# Personal health
mkdir ~/health/medical_records
cd ~/health/medical_records

# Scan documents
mv ~/Downloads/lab_results_2024.pdf .
mv ~/Downloads/prescription.pdf .

# Encrypt
vaultix init

# Doctor visit
vaultix extract lab_results
# Show to doctor
rm lab_results_2024.pdf

Business Operations

Payroll

# Employee payroll
mkdir ~/business/payroll/2024-01
cd ~/business/payroll/2024-01

# Generate payroll
vim salaries.csv
vim tax_withholding.xlsx

# Encrypt immediately
vaultix init

# Processing day
vaultix extract
# Process payments
vaultix clear  # Remove after processing

Customer Database

# Client information
mkdir ~/business/clients
cd ~/business/clients

# Export from CRM
mv ~/Downloads/clients_export.csv .

# Encrypt
vaultix init

# Marketing campaign
vaultix extract clients_export
# Import to email tool
rm clients_export.csv

Automation Examples

Batch Processing

#!/bin/bash
# encrypt_all_projects.sh

for project in ~/projects/*/; do
    cd "$project"
    if [ ! -d ".vaultix" ]; then
        echo "Encrypting $project"
        vaultix init < password.txt
    fi
done

Backup Script

#!/bin/bash
# daily_vault_backup.sh

VAULT_DIR=~/important_vault
BACKUP_DIR=/mnt/backup/vaults
DATE=$(date +%Y%m%d)

# Copy vault
cp -r "$VAULT_DIR" "$BACKUP_DIR/vault_$DATE"

# Keep only last 7 days
find "$BACKUP_DIR" -type d -name "vault_*" -mtime +7 -exec rm -rf {} \;

echo "Backup completed: vault_$DATE"

Extract and Process

#!/bin/bash
# process_vault_files.sh

cd ~/data_vault

# Extract all data files
vaultix extract

# Process
python3 analyze_data.py *.csv > report.txt

# Clean up
rm *.csv

# Store report
vaultix add report.txt

Integration Examples

With Git

# Track encrypted vault in git
cd ~/project
vaultix init

git add .vaultix/
git commit -m "Add encrypted data"
git push

# Teammate clones
git clone repo
cd project
vaultix list  # Enter shared password

With Cloud Storage

# Sync encrypted vault
cd ~/vault
vaultix init

# Setup rclone
rclone config

# Sync
rclone sync . remote:vault/

# On other computer
rclone sync remote:vault/ ~/vault
vaultix extract

With Docker

# Dockerfile with vaultix
FROM golang:1.21
COPY vaultix /usr/local/bin/
COPY vault/ /vault/
WORKDIR /vault
CMD ["vaultix", "list"]

Tips and Tricks

Quick Access Alias

# Add to ~/.bashrc or ~/.zshrc
alias vault='cd ~/vault && vaultix'
alias vlist='cd ~/vault && vaultix list'
alias vadd='cd ~/vault && vaultix add'
alias vget='cd ~/vault && vaultix extract'

Password from Environment

# DON'T DO THIS IN PRODUCTION
export VAULT_PASSWORD="my_password"
echo "$VAULT_PASSWORD" | vaultix list

Preview Without Extracting

# For text files
vaultix extract readme.txt
cat readme.txt
rm readme.txt

# Or
vaultix extract readme.txt | less

Compress Before Encrypting

# Large directories
tar czf data.tar.gz data/
vaultix add data.tar.gz
rm data.tar.gz

# Extract later
vaultix extract data.tar.gz
tar xzf data.tar.gz

Common Patterns

Temporary Extraction

# Extract to temp, use, delete
cd ~/vault
TEMP=$(mktemp -d)
vaultix extract sensitive.pdf
mv sensitive.pdf "$TEMP/"
# Work with file
cd "$TEMP"
# Done
rm -rf "$TEMP"

Verify Before Clearing

# Before permanent deletion
vaultix list > files_list.txt
vaultix extract  # Get all files
# Verify extracted files
ls -l
# If satisfied
vaultix clear

Version Control for Vaults

# Keep vault versions
mkdir ~/vault_versions
cd ~/my_vault

# Before major changes
tar czf ~/vault_versions/vault_$(date +%Y%m%d).tar.gz .

# Make changes
vaultix add new_files.zip

# If something goes wrong
tar xzf ~/vault_versions/vault_20240115.tar.gz

These examples demonstrate vaultix in various real-world scenarios. Adapt them to your specific needs while following security best practices.