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

Uploaded Python 3

File details

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

File metadata

  • Download URL: envsync_secure-0.1.1.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.1.tar.gz
Algorithm Hash digest
SHA256 73d8749141372a766bab53a5b250c73e73e4bc21a804efa9ffad9202d037a05b
MD5 64d381cdac0041f71e458a55b9ebb029
BLAKE2b-256 b31b05f668c2c14ab19822cf02c842dd6ca8f8b96587bf7a5be5a24af9dc7de0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: envsync_secure-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 5.2 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ee5daead8bc5d2b347e98686f87337d9a7ba30807a6d03f8476b96e3a3df8af5
MD5 c45d2b32ecdac75c66f6fa9e152bb954
BLAKE2b-256 36454afd79f2bc87d69b20a0c959998b55b7a3e798e1f318f8577947838222cc

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