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.0.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.0-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: repo2img-1.0.0.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.0.tar.gz
Algorithm Hash digest
SHA256 6cf6372dde971a54245a496da2cf1b962e841f49da3ab2147c6a8e4d274b9667
MD5 1a82a700e3b45d651560873f3cfd9c7f
BLAKE2b-256 406b048c8005f07f95360162239fb3691239b172c875d547138e0373c18769b5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: repo2img-1.0.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 29468542df08d7d8a97f93506056820002bf8f33010270e670402f94011a295e
MD5 f610e4d9f3fd4884a44e308ea1e347c4
BLAKE2b-256 ef287af09af62f86eb4327735a434aab15396407a3f8dde6edc087feefb61271

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