Skip to main content

A high-performance CLI tool to convert a code repository into a single, compressed, and encrypted image and back.

Project description

repo2img (CLI)

A Python tool to encode and decode full code repositories into a single PNG image. Supports optional AES-256 encryption.

Features

  • Encode full folders into a single .png file
  • Decode image back into original repo (exact structure)
  • Optional AES-256 encryption using password
  • Offline CLI utility

Installation

pip install -r requirements.txt

Encode

python main.py encode --path ./my_repo --out repo.png --encrypt --password mypass

Decode

python main.py decode --path repo.png --out ./restored_repo --password mypass

Project Structure

  • cli/: CLI argument handlers
  • core/: core logic (archive, crypto, encode/decode)
  • utils/: helpers for I/O, hashing
  • main.py: CLI entrypoint

Encryption

  • AES-256-GCM (with salt + password-derived key)
  • Ensure password is kept safe to recover the repo

Notes

  • Max repo size supported ~12GB (based on PNG pixel limits)
  • All encoding is lossless and fully reversible
  • Output image is not meant to be human-viewable

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

repo2img-1.0.1.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

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

repo2img-1.0.1-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file repo2img-1.0.1.tar.gz.

File metadata

  • Download URL: repo2img-1.0.1.tar.gz
  • Upload date:
  • Size: 6.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for repo2img-1.0.1.tar.gz
Algorithm Hash digest
SHA256 74ccc6463b7145a0620bfa629438d583c3444a51eda377807a22fc0906a990c8
MD5 35122e03e24c34176cebc50ada12a46b
BLAKE2b-256 adda84d8c6a5ca6da052ce61717a712f5c771b27a7f0ceb42b608f359ae9f19f

See more details on using hashes here.

File details

Details for the file repo2img-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: repo2img-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for repo2img-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 55396d6d874aa1b0796fcda7a61bd42d398126a2f2cbfbfaf307b21ed3951190
MD5 527d0b5f10d2c2ab0d442aef786e82e0
BLAKE2b-256 7667377a7bb806e4fb57148c40cd424068760169ff412169e37c9529131c4cda

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