Skip to main content

Stamp your developer environment on any machine

Project description

🔏 Imprint v2

Imprint Demo

Stamp your developer environment on any machine.

Imprint is a premium CLI tool inspired by the Gemini CLI experience. It allows you to snapshot your entire machine's developer setup — from dotfiles and VS Code extensions to global packages and shell configurations — and restore it perfectly on a new machine in seconds.


✨ Features

  • 🚀 Instant Snapshot: Capture EVERYTHING with imp snapshot.
  • 🔄 Zero-Touch Restore: Rebuild your world with imp restore.
  • 💎 Premium UI: Branded themes, dynamic progress bars, and high-fidelity terminal aesthetics.
  • 🛡️ Hardened Safety: Automated filtering of SSH keys, tokens, and secrets via a non-bypassable .imprintignore system.
  • 🌐 Cloud Sync: Built-in GitHub integration for secure, versioned backups.
  • 🍎 Universal: First-class support for Windows, macOS, Linux, and WSL.

🚀 Quick Start

1. Installation

pip install imprint-cli

2. Capture Your World

imp snapshot

On first run, Imprint will prompt you for an optional GitHub repository URL to enable cloud syncing.

3. Move to a New Machine

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

📺 Demo

See Imprint v2 in action. You can try restoring a sample "Demo Environment" directly from GitHub:

# Preview restoring a sample environment
imp restore https://github.com/Venkatesh-6921/imprint-demo.git --dry-run

What happens during restore?

  1. 🔍 Clone: Retrieves the configuration repo from GitHub.
  2. 📁 Dotfiles: Symlinks .zshrc, .tmux.conf, etc., to your $HOME.
  3. 🧩 Extensions: Installs all listed VS Code extensions.
  4. 📦 Packages: Reinstalls your favorite pip and npm tools.
  5. ✨ Finish: Your environment is ready to use immediately.

🛠️ Usage

Command Action
imp snapshot Captures your current environment and pushes to GitHub.
imp restore Restores environment from local or GitHub source.
imp diff See exactly what has changed since your last snapshot.
imp update Quick alias for snapshot + push.
imp status View a high-level overview of your tracked configuration.

🔍 What gets captured?

  • Dotfiles: .zshrc, .bashrc, .gitconfig, .vimrc, and more.
  • VS Code: Complete extension manifest + settings.json.
  • Packages: Global packages from pip, npm, apt, brew, and winget.
  • Shell: Frameworks (Oh My Zsh), themes, and plugin configurations.
  • Scripts: Everything in your ~/bin folder.
  • System: Runtimes like Python, Node.js, and Git versions.

🔏 Security First

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

  • 🔑 SSH Keys (.ssh/id_*)
  • 🎫 Tokens & Secrets (*.token, *secret*)
  • 🌐 Environment files (.env)
  • ☁️ Cloud credentials (.aws/, .kube/)
  • 📜 Shell history (.zsh_history)

📦 For Developers: Publishing to PyPI

Pre-requisites

  • A PyPI account.
  • An API Token (__token__).

Build & Upload

  1. Build the package:
    python -m build
    
  2. Upload securely:
    # Set credentials in environment variables
    $env:TWINE_USERNAME="__token__"
    $env:TWINE_PASSWORD="pypi-your-token-here"
    python -m twine upload dist/*
    

[!TIP] Forgot your PyPI Token? PyPI API tokens are only shown once. If you lose or forget it:

  1. Log in to your PyPI account.
  2. Go to Account Settings.
  3. Scroll to API tokens.
  4. Delete the lost token and click Add API token.
  5. Copy the new token immediately!

📄 License

MIT © Venkatesh

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-2.0.1.tar.gz (70.9 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-2.0.1-py3-none-any.whl (31.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: imprint_cli-2.0.1.tar.gz
  • Upload date:
  • Size: 70.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.0

File hashes

Hashes for imprint_cli-2.0.1.tar.gz
Algorithm Hash digest
SHA256 ba232fbcedcd63dfc59a1e6ef9dff00b584eba832e0d90e82a5326fc4819e14a
MD5 411bc428e3d0d78f034770b344d3dbbf
BLAKE2b-256 aba2ab871f3abc039f3691fca639b36c16dc3faa19790880ebbe4d9946dbb372

See more details on using hashes here.

File details

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

File metadata

  • Download URL: imprint_cli-2.0.1-py3-none-any.whl
  • Upload date:
  • Size: 31.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.0

File hashes

Hashes for imprint_cli-2.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 75f20b845a32adc3b8e888f73665aa5994fd0e6a38437068f2328f612d9cbb6d
MD5 e3361e905430a09574c06985574343e9
BLAKE2b-256 11459a8601c456804413e7eeb6be17c8f876cb44d6483f525af25775baae534a

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