Skip to main content

Securely share .env files with teammates via Firebase

Project description

envsync

Securely share .env files with teammates using encryption and Firebase.

Why this exists

Sharing .env files over Slack or email is a security risk. Git is not an option either. envsync encrypts your secrets locally before they ever leave your machine, pushes the encrypted blob to Firestore, and lets teammates pull and decrypt with a shared key.

Install

pip install envsync

Quickstart

Step 1 - Set up on your machine:

envsync init

You will be asked for a project name and the path to your Firebase service account JSON.

Step 2 - Generate a secret key:

envsync keygen

Copy the key and share it with your teammates securely (see below).

Step 3 - Push your .env to Firestore:

envsync push --key YOUR_KEY

Step 4 - Teammate pulls and decrypts:

envsync pull --key YOUR_KEY

Check your current config:

envsync status

Config reference

envsync stores your config at ~/.envsync/config.toml:

[settings]
project_name = "my-project"
service_account_path = "/absolute/path/to/serviceAccountKey.json"

The secret key is never stored here. You manage and share it yourself.

How to share the key with teammates

Never share the key over Slack, email, or any chat tool. Use a password manager that supports secure sharing, such as 1Password, Bitwarden, or Dashlane. Send the key through the password manager's built-in share feature so it never appears in plaintext in a message thread.

Security rules

  • Your .env is encrypted locally before it is sent anywhere
  • Firestore only ever holds the encrypted blob, which is useless without the key
  • The key is your responsibility to share securely
  • Never commit your service account JSON to git

.gitignore warning

Add this to your .gitignore immediately:

.env
serviceAccountKey.json
*.json

The service account JSON gives full access to your Firebase project. Treat it like a password.

License

Copyright (c) 2026 Hillel Ilany Freedman

Permission is hereby granted to use this software freely for personal and commercial use. Copying, redistributing, or republishing this software in whole or in part without explicit written permission from the author is not permitted.

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

envsync_secure-0.1.0.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

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

envsync_secure-0.1.0-py3-none-any.whl (5.3 kB view details)

Uploaded Python 3

File details

Details for the file envsync_secure-0.1.0.tar.gz.

File metadata

  • Download URL: envsync_secure-0.1.0.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for envsync_secure-0.1.0.tar.gz
Algorithm Hash digest
SHA256 f5329e7d9f5be2b30d3c7f85e2db7d0e57624eff19b65a164d3631a4a917a3bd
MD5 cd3def10267abb94fb3d43900562c289
BLAKE2b-256 6759ea851727925a9b73d0227143a0b356d038679034965703469451538368dc

See more details on using hashes here.

File details

Details for the file envsync_secure-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: envsync_secure-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for envsync_secure-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7b8e0d08e062d9b9d04caa59d98f985a931a038cae20be635990afc512ad7f7c
MD5 e1461cecb01d84bd4d1894f3488ceaeb
BLAKE2b-256 1a58cca4ab02a3baa887f8035183138bbe010268179dd05f44e2716b94b7d305

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