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

Uploaded Python 3

File details

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

File metadata

  • Download URL: repo2img-1.0.2.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.2.tar.gz
Algorithm Hash digest
SHA256 c52b30b7ccc04ce9e22f3be63317623b8fcd5dbeb53ea7c487192cd49f5affcb
MD5 ae025a7efc3f8860fbbe919e583a5e38
BLAKE2b-256 850bede464e18d6b2cd1381ec516e1cf72d8ff4c65835a3a581651ff9f7a024a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: repo2img-1.0.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3faf51df2da63d83f0aa8644b714a00388748a8f96bd271ed03d3481c6827747
MD5 61096b56f0205f0e3f2202a458cbdcec
BLAKE2b-256 d5ec09e67fb0ebb00219e633bd91b5db9d712ff025b06d09203283544007320d

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