Skip to main content

Stamp your developer environment on any machine โ€” snapshot, restore, diff, encrypt.

Project description

๐Ÿ” Imprint v3

Imprint Demo

Stamp your developer environment on any machine.

Imprint is a premium CLI tool that snapshots your entire machine's developer setup โ€” dotfiles, VS Code extensions, Neovim plugins, tmux config, global packages, shell settings โ€” and restores it perfectly on a new machine in seconds. Now with named profiles, AES-256-GCM encryption, and multi-format export.


โœจ What's New in v3

  • ๐Ÿง‘โ€๐Ÿ’ป Named Profiles โ€” work, home, laptop โ€” switch with imp profile use
  • ๐Ÿ” AES-256-GCM Encryption โ€” encrypt dotfiles before pushing to GitHub
  • ๐Ÿ“ค Multi-Format Export โ€” JSON, YAML, Markdown, or shell script
  • ๐Ÿ”ญ 6 New Collectors โ€” Neovim, Cursor IDE, tmux, SSH config, Cargo, uv
  • ๐Ÿฉบ Doctor & Diagnostics โ€” imp doctor validates your entire setup
  • ๐Ÿ“œ Snapshot History โ€” browse past snapshots with imp history
  • ๐Ÿ”„ Compare Snapshots โ€” diff two snapshots with imp compare
  • ๐Ÿ‘๏ธ Watch Mode โ€” auto-snapshot on file changes
  • ๐ŸŽจ Nord Theme โ€” premium UI with branded dashboard

๐Ÿš€ Quick Start

1. Installation

pip install imprint-cli

# With encryption support
pip install imprint-cli[crypto]

# With watch mode
pip install imprint-cli[watch]

# Everything
pip install imprint-cli[full]

2. First-Run Setup

imp init

3. Capture Your World

imp snapshot

4. Move to a New Machine

imp restore https://github.com/your-username/my-imprint-config.git

๐Ÿ› ๏ธ All Commands

Command Action
imp Interactive dashboard with machine info
imp init First-run setup wizard
imp snapshot Capture full environment and push
imp restore [url] Restore from local or GitHub source
imp restore [url] --dry-run Preview what would be restored
imp diff See what changed since last snapshot
imp update Quick snapshot + push
imp status Overview of tracked configuration
imp doctor Health check & diagnostics
imp history Browse past snapshots
imp export --fmt md Export as Markdown report
imp profile list List named profiles
imp profile use work Switch to a named profile
imp compare latest previous Diff two snapshots
imp encrypt --init Generate encryption key
imp watch Auto-snapshot on file changes

๐Ÿ” What Gets Captured?

Category Details
Dotfiles .zshrc, .bashrc, .gitconfig, .vimrc, and more
VS Code Complete extension manifest + settings.json
Neovim lazy.nvim / packer plugins, init.lua
Cursor IDE Extensions list
tmux Config, prefix key, TPM plugins
Packages pip, npm, apt/brew/winget, cargo, uv
Shell Oh My Zsh theme, plugins, aliases, functions
SSH Config Host aliases only (never keys or passwords)
Scripts Everything in ~/bin
System Python, Node.js, Git versions, OS info

๐Ÿ” Security First

Imprint is designed to be secure by default. It never captures sensitive files. The .imprintignore system automatically blocks:

  • ๐Ÿ”‘ SSH Keys (.ssh/id_*, *.pem, *.key)
  • ๐ŸŽซ Tokens & Secrets (*.token, *secret*, *api_key*)
  • ๐ŸŒ Environment files (.env, .env.*)
  • โ˜๏ธ Cloud credentials (.aws/credentials, .gcloud/, .kube/)
  • ๐Ÿ“œ Shell history (.bash_history, .zsh_history)
  • ๐Ÿ”’ GPG keys (.gnupg/)

All subprocess calls use list arguments (no shell=True) to prevent shell injection.


๐Ÿ“ฆ Publishing

imprint-cli uses GitHub Actions with a PYPI_API_TOKEN secret for automated publishing:

# Tag a release on main (after merging PR)
git tag v3.0.0
git push origin main --tags
# GitHub Actions automatically builds and publishes to PyPI

Setup: Add your PyPI API token as a repository secret named PYPI_API_TOKEN in Settings โ†’ Secrets โ†’ Actions.


๐Ÿค Contributing

See CONTRIBUTING.md for development setup, git workflow, and how to add new collectors.

๐Ÿ“œ Code of Conduct

See CODE_OF_CONDUCT.md.


๐Ÿ“„ License

MIT ยฉ Venkatesh-6921

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

imprint_cli-3.0.0.tar.gz (126.4 kB view details)

Uploaded Source

Built Distribution

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

imprint_cli-3.0.0-py3-none-any.whl (39.8 kB view details)

Uploaded Python 3

File details

Details for the file imprint_cli-3.0.0.tar.gz.

File metadata

  • Download URL: imprint_cli-3.0.0.tar.gz
  • Upload date:
  • Size: 126.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for imprint_cli-3.0.0.tar.gz
Algorithm Hash digest
SHA256 47f1fa541d71924a14334ef80e2eafb1d5135483334b057bdf0d5d16630d5728
MD5 e16175f356e1d6b511c0064e10cd013f
BLAKE2b-256 d2dd8123513b2af1eb36741cf413b8bdf55a86ff0238e3dfcc9d6a332f65260f

See more details on using hashes here.

File details

Details for the file imprint_cli-3.0.0-py3-none-any.whl.

File metadata

  • Download URL: imprint_cli-3.0.0-py3-none-any.whl
  • Upload date:
  • Size: 39.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for imprint_cli-3.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b5ef6ce5bb7219149ef07bb026762fa0db0c6a38f42fa41616b321f8d178966a
MD5 3f80891268cce5318958aa038c3df857
BLAKE2b-256 f969146efdcef7c197ba4a505b03271aad89b35c33f5851cec9c27b08fed48e0

See more details on using hashes here.

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