# elasticdog/transcrypt

transparently encrypt files within a git repository

Repository: https://github.com/elasticdog/transcrypt
Canonical: https://ross.abutalabs.com/products/elasticdog-transcrypt
Language: Shell
License: MIT
License Family: permissive
Topics: encryption, git, gitattributes, shell, secrets
Last push: 2026-07-21T04:23:57+00:00

## Health v2 (maintenance only)
Score: 80/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 93, release rhythm 52, longevity 100
- inputs: {"age_days": 4589, "days_push": 43, "days_rel": 107, "gap_med": 307.0, "n_releases_24m": 3}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1708, forks 120 (observed 2026-08-28T04:05:25.448116+00:00)

## What it is
A single Bash script that configures transparent encryption of sensitive files in a Git repository using Git's clean/smudge filters and OpenSSL symmetric ciphers. Files are encrypted on commit and decrypted on checkout, so secrets can be stored in remotes without exposing them to people without the password.

## Use cases
- store passwords and private keys in a git repository safely
- encrypt sensitive files before pushing to github or dropbox
- transparently decrypt files on checkout in a git repo
- share a repo with encrypted secrets while teammates commit to unencrypted files
- rekey encrypted files in a git repository
- list which files are encrypted in a git repo

## When to choose
- you want a dependency-light, single-script alternative to git-crypt
- you need per-file unique salts and OpenSSL-based symmetric encryption
- you want encryption configured once without the tool needing to stay installed
- you need to set up additional clones or rotate keys easily

## When to avoid
- you need asymmetric encryption or per-user access control
- you want full-disk or whole-repo encryption rather than selected files
- you need a GUI or non-technical user workflow
- your environment lacks Bash, Git, and OpenSSL

## Facets
- artifact type: cli-tool
- maturity: stable
- function: cryptography, security, secrets-management, version-control, developer-tools
- domain: security, version-control, developer-tools, privacy
- platform: cli, cross-platform
- tags: git, encryption, gitattributes, clean-smudge-filters, openssl, shell-script, secrets-in-repo, linux, macos

## Member repositories
- elasticdog/transcrypt (main) score 80

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:25.448116+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:37:00.856831+00:00, confidence not recorded.
  - readme: https://github.com/elasticdog/transcrypt (fetched 2026-08-28T04:05:25.448116+00:00, sha ad4179ac2f9f)
- Data as of 2026-08-30T08:39:29.467469+00:00.
