Skip to main content

The Unified Project Lifecycle Manager: Backup, Restore, and Teleport Projects Anywhere.

Project description

Project Vault (pv)

The Unified Project Lifecycle Manager.
Teleport your entire project state—code, databases, caches, and environments—anywhere, safely.


🚀 The Core Vision

Project Vault (pv) creates 100% identical project capsules. It captures the "messy reality" of a working project that Git ignores: local databases, node_modules, .env files, compiled binaries, and temp directories.

If you restore a pv snapshot on a new machine and run diff -r, you will see zero differences.

Use Cases:

  • Teleport: Move a running workspace from Laptop → Server in seconds.
  • Resurrect: Restore a dead environment exactly as it was 3 months ago.
  • Debug: Snapshot a bug state (including the DB) and send it to a colleague.

📦 Installation

The Full Suite (Recommended)

Install the unified tool to get backup, restore, and cloud synchronization features.

pip install project-vault

This installs the pv command, which includes:

  • projectclone: The core snapshot engine.
  • projectrestore: The safety-critical restoration tool.

Standalone Tools (Advanced)

For servers, CI/CD, or minimal environments, you can install the components independently:

  • Backup Only: pip install projectclone (No cloud deps)
  • Restore Only: pip install projectrestore (Zero dependencies, ultra-lightweight)

⚡ Quick Start

1. Initialize

Run this in your project root to generate a config file (pv.toml).

pv init

2. Create a Snapshot

Capture the current state of your project into the local vault.

pv vault

3. Check Status

See what has changed in your workspace since the last snapshot.

pv status

4. Sync to Cloud

Push your encrypted, deduplicated snapshots to S3 or Backblaze B2.

# Preview what will be uploaded
pv push --dry-run

# Upload
pv push

5. Restore (Teleport)

Bring the project back to life on any machine.

# Restore the entire project
pv vault-restore ./vault/snapshots/my-project/snapshot_latest.json ./restored_project

# Or fix a single mistake locally
pv checkout src/main.py

🛠️ Commands

Command Description
pv vault Create a content-addressable snapshot of the current directory.
pv status Show modified files and cloud sync status.
pv diff Compare a local file against the latest snapshot.
pv checkout Restore a specific file from the latest snapshot.
pv push Sync local vault to Cloud (S3/B2).
pv pull Download missing snapshots from Cloud.
pv list List all local or cloud snapshots.
pv vault-restore Full project restoration from a manifest.
pv check-integrity Verify the health of the local vault (detect corruption).

🧩 Architecture

Project Vault is a monorepo containing three distinct tools:

  1. project-vault (pv): The orchestrator. Handles configuration, cloud sync, and user interaction.
  2. projectclone: The backup engine. Handles hashing, deduplication, and manifest generation.
  3. projectrestore: The restore engine. A standalone, dependency-free tool focused purely on safe data reconstruction.

🗺️ Roadmap

See ROADMAP.md for the vision of Project Teleportation, Smart Capsules, and Device Mesh.


📄 License

MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

project_vault-1.0.0.tar.gz (15.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

project_vault-1.0.0-py3-none-any.whl (14.2 kB view details)

Uploaded Python 3

File details

Details for the file project_vault-1.0.0.tar.gz.

File metadata

  • Download URL: project_vault-1.0.0.tar.gz
  • Upload date:
  • Size: 15.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for project_vault-1.0.0.tar.gz
Algorithm Hash digest
SHA256 c8769632ec6c43fce2d2208ff06f48031bd820cfd2843e3639525a2acb8eb479
MD5 b3975e043f3c8ab763243570a63ea3fa
BLAKE2b-256 38a2bd983bbc29ee1050c092ffccc0b3cefca2387c2245865b43a76f08603e87

See more details on using hashes here.

Provenance

The following attestation bundles were made for project_vault-1.0.0.tar.gz:

Publisher: publish.yml on dhruv13x/project-vault

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file project_vault-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: project_vault-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 14.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for project_vault-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 18fa004b8b083853bafa61113831ff44bd29783782503e06290648f76b05d0b0
MD5 be27439cdbbdf0deb695b64b7bfab1af
BLAKE2b-256 95e8d9fcd54b38be1835c4501965d34f2b0b3943ea1c1dfb46fd88198997af6a

See more details on using hashes here.

Provenance

The following attestation bundles were made for project_vault-1.0.0-py3-none-any.whl:

Publisher: publish.yml on dhruv13x/project-vault

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page