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
.envis 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
73d8749141372a766bab53a5b250c73e73e4bc21a804efa9ffad9202d037a05b
|
|
| MD5 |
64d381cdac0041f71e458a55b9ebb029
|
|
| BLAKE2b-256 |
b31b05f668c2c14ab19822cf02c842dd6ca8f8b96587bf7a5be5a24af9dc7de0
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ee5daead8bc5d2b347e98686f87337d9a7ba30807a6d03f8476b96e3a3df8af5
|
|
| MD5 |
c45d2b32ecdac75c66f6fa9e152bb954
|
|
| BLAKE2b-256 |
36454afd79f2bc87d69b20a0c959998b55b7a3e798e1f318f8577947838222cc
|