docs: add environment variable setup and configuration guide (#222)#244
docs: add environment variable setup and configuration guide (#222)#244durdana3105 wants to merge 1 commit into
Conversation
|
@durdana3105 is attempting to deploy a commit to the xthxr's projects Team on Vercel. A member of the Team first needs to authorize it. |
📝 WalkthroughWalkthroughThis pull request adds a new ChangesEnvironment Setup Documentation
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 4
🧹 Nitpick comments (2)
ENVIORNMENT_SETUP.md (2)
142-151: ⚡ Quick winClarify that server settings are optional with defaults.
PORT and BASE_URL are not validated as required in the server startup code, suggesting they have default values. Consider clarifying that these are optional configuration values that can be adjusted if needed, rather than presenting them as required setup steps.
📝 Suggested clarification
## Step 6: Configure Server Settings -Local development: +Optional server settings for local development (with defaults): ```env -PORT=3000 -BASE_URL=http://localhost:3000 +PORT=3000 # Default: 3000 +BASE_URL=http://localhost:3000 # Default: http://localhost:3000-Adjust if running on a different port.
+Adjust these only if you need to run on a different port or domain.</details> <details> <summary>🤖 Prompt for AI Agents</summary>Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.In
@ENVIORNMENT_SETUP.mdaround lines 142 - 151, Update the environment setup
text to clarify that PORT and BASE_URL are optional and have defaults used by
the server startup code: annotate the example lines for PORT and BASE_URL with
their default values (e.g., "PORT=3000 # Default: 3000" and
"BASE_URL=http://localhost:3000 # Default: http://localhost:3000") and change
the trailing guidance to say "Adjust these only if you need to run on a
different port or domain." Reference the PORT and BASE_URL keys and the server
startup behavior so readers understand they can omit or change them as needed.</details> <!-- cr-comment:v1:b964d1d2c225711195f3c98d --> --- `119-138`: _⚡ Quick win_ **Clarify that Upstash Redis is optional.** While the Upstash Redis configuration is documented, the variables (UPSTASH_REDIS_REST_URL and UPSTASH_REDIS_REST_TOKEN) are not validated as required for server startup. The code shows that if these are missing, the application logs a warning and continues running with Redis features disabled (falling back to in-memory storage for caching). Consider adding a note that these variables are optional and explaining the fallback behavior when they're not configured. <details> <summary>📝 Suggested clarification</summary> Add a note after line 132: ```diff UPSTASH_REDIS_REST_TOKEN=+> Note: Upstash Redis is optional. If not configured, the application will fall back to in-memory caching, but edge redirects and persistent rate limiting will not be available.
+
These values are used for:</details> <details> <summary>🤖 Prompt for AI Agents</summary>Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.In
@ENVIORNMENT_SETUP.mdaround lines 119 - 138, Update the "Step 5: Configure
Upstash Redis" section to clarify that UPSTASH_REDIS_REST_URL and
UPSTASH_REDIS_REST_TOKEN are optional and to describe fallback behavior: add a
short note after the configuration block stating that if those vars are not set
the app will continue running with Redis features disabled, using in-memory
caching instead, and that edge redirects and persistent rate limiting will be
unavailable; reference the variable names (UPSTASH_REDIS_REST_URL,
UPSTASH_REDIS_REST_TOKEN) and the behaviors (in-memory caching fallback,
disabled edge redirects, no persistent rate limiting) so readers know the
consequences.</details> <!-- cr-comment:v1:d40d4a6c0226b846f59e5d02 --> </blockquote></details> </blockquote></details> <details> <summary>🤖 Prompt for all review comments with AI agents</summary>Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.Inline comments:
In@ENVIORNMENT_SETUP.md:
- Line 1: Rename the markdown file from ENVIORNMENT_SETUP.md to the correct
ENVIRONMENT_SETUP.md and update any references to it (e.g., links in README.md)
to use the corrected filename so existing links resolve; ensure git tracks this
rename (git mv or equivalent) to preserve history and update any
CI/documentation references that point to ENVIORNMENT_SETUP.md.- Around line 3-151: The doc currently treats all environment variables as
equal; update the guide to clearly separate "Required Variables" (server will
not start without) from "Optional Variables" and mark them inline in steps: list
FIREBASE_PROJECT_ID, FIREBASE_CLIENT_EMAIL, FIREBASE_PRIVATE_KEY and
SESSION_SECRET (note SESSION_SECRET min 32 chars) under a new "Required
Variables" / "Configuration Overview" section, and mark Firebase web app vars
(FIREBASE_API_KEY, FIREBASE_AUTH_DOMAIN, FIREBASE_MESSAGING_SENDER_ID,
FIREBASE_APP_ID), GITHUB_TOKEN, UPSTASH_REDIS_REST_URL,
UPSTASH_REDIS_REST_TOKEN, PORT and BASE_URL as optional/feature-specific; update
Step 1/Step 2/Step 5/Step 6 text to annotate each step/variable as REQUIRED or
OPTIONAL and keep the minimal example cp instruction as-is so contributors know
the minimum to run the server.- Around line 55-68: The README currently lists Firebase web app env vars
(FIREBASE_API_KEY, FIREBASE_AUTH_DOMAIN, FIREBASE_MESSAGING_SENDER_ID,
FIREBASE_APP_ID) that are not used by the server; update ENVIORNMENT_SETUP.md to
either remove those vars or explicitly mark them as client-side-only and
instruct developers to populate client config via public/js/firebase-config.js
(see public/js/firebase-config.example.js) while clarifying that the server
expects FIREBASE_PROJECT_ID, FIREBASE_CLIENT_EMAIL, FIREBASE_PRIVATE_KEY and
SESSION_SECRET (as validated in server.js); also mirror this change in
.env.example so runtime envs reflect what server.js actually requires.- Around line 94-115: Update ENVIORNMENT_SETUP.md to mark GITHUB_TOKEN as
optional and only required when using the bug-report feature: change the text
around the GitHub token steps to indicate "Optional — required only if you
enable or use the POST /api/bug-report endpoint" and align the note with
docs/PROJECT_STRUCTURE.md; reference the environment variable name GITHUB_TOKEN
and mention that server.js only uses it for Authorization when creating bug
reports so no startup validation is needed.
Nitpick comments:
In@ENVIORNMENT_SETUP.md:
- Around line 142-151: Update the environment setup text to clarify that PORT
and BASE_URL are optional and have defaults used by the server startup code:
annotate the example lines for PORT and BASE_URL with their default values
(e.g., "PORT=3000 # Default: 3000" and "BASE_URL=http://localhost:3000 #
Default: http://localhost:3000") and change the trailing guidance to say "Adjust
these only if you need to run on a different port or domain." Reference the PORT
and BASE_URL keys and the server startup behavior so readers understand they can
omit or change them as needed.- Around line 119-138: Update the "Step 5: Configure Upstash Redis" section to
clarify that UPSTASH_REDIS_REST_URL and UPSTASH_REDIS_REST_TOKEN are optional
and to describe fallback behavior: add a short note after the configuration
block stating that if those vars are not set the app will continue running with
Redis features disabled, using in-memory caching instead, and that edge
redirects and persistent rate limiting will be unavailable; reference the
variable names (UPSTASH_REDIS_REST_URL, UPSTASH_REDIS_REST_TOKEN) and the
behaviors (in-memory caching fallback, disabled edge redirects, no persistent
rate limiting) so readers know the consequences.</details> <details> <summary>🪄 Autofix (Beta)</summary> Fix all unresolved CodeRabbit comments on this PR: - [ ] <!-- {"checkboxId": "4b0d0e0a-96d7-4f10-b296-3a18ea78f0b9"} --> Push a commit to this branch (recommended) - [ ] <!-- {"checkboxId": "ff5b1114-7d8c-49e6-8ac1-43f82af23a33"} --> Create a new PR with the fixes </details> --- <details> <summary>ℹ️ Review info</summary> <details> <summary>⚙️ Run configuration</summary> **Configuration used**: defaults **Review profile**: CHILL **Plan**: Pro **Run ID**: `2ca9a542-4426-403d-90ab-c35427de295d` </details> <details> <summary>📥 Commits</summary> Reviewing files that changed from the base of the PR and between d8435c7deecdd530a147d18862af1527a74ebc46 and 4566188e1ba6f49f891bd3ed3588ab8c9ce2db8a. </details> <details> <summary>📒 Files selected for processing (1)</summary> * `ENVIORNMENT_SETUP.md` </details> </details> <!-- This is an auto-generated comment by CodeRabbit for review status -->
| @@ -0,0 +1,252 @@ | |||
| # Environment Setup Guide | |||
There was a problem hiding this comment.
Critical: Fix filename typo.
The filename is misspelled as ENVIORNMENT_SETUP.md but should be ENVIRONMENT_SETUP.md. This typo will break any links referencing this documentation from the README (as mentioned in the PR objectives) and affects discoverability.
📝 Rename the file
Rename the file from:
ENVIORNMENT_SETUP.md
to:
ENVIRONMENT_SETUP.md
Also ensure any links in the README use the correct filename.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@ENVIORNMENT_SETUP.md` at line 1, Rename the markdown file from
ENVIORNMENT_SETUP.md to the correct ENVIRONMENT_SETUP.md and update any
references to it (e.g., links in README.md) to use the corrected filename so
existing links resolve; ensure git tracks this rename (git mv or equivalent) to
preserve history and update any CI/documentation references that point to
ENVIORNMENT_SETUP.md.
| ## Overview | ||
|
|
||
| This project relies on several external services, including Firebase, Upstash Redis, and GitHub integration. Proper configuration of environment variables is required before running the application locally or deploying it. | ||
|
|
||
| --- | ||
|
|
||
| ## Prerequisites | ||
|
|
||
| Before starting, ensure you have: | ||
|
|
||
| * Node.js installed | ||
| * npm installed | ||
| * A Firebase project | ||
| * An Upstash Redis database | ||
| * A GitHub Personal Access Token (for bug reporting features) | ||
|
|
||
| --- | ||
|
|
||
| ## Step 1: Create Your Environment File | ||
|
|
||
| Copy the example configuration file: | ||
|
|
||
| ```bash | ||
| cp .env.example .env.local | ||
| ``` | ||
|
|
||
| Open `.env.local` and replace all placeholder values with your actual credentials. | ||
|
|
||
| --- | ||
|
|
||
| ## Step 2: Configure Firebase | ||
|
|
||
| ### Create a Firebase Project | ||
|
|
||
| 1. Visit Firebase Console. | ||
| 2. Create a new project. | ||
| 3. Enable the required Firebase services. | ||
|
|
||
| ### Firebase Admin SDK Variables | ||
|
|
||
| Obtain these values from: | ||
|
|
||
| Firebase Console → Project Settings → Service Accounts | ||
|
|
||
| Required variables: | ||
|
|
||
| ```env | ||
| FIREBASE_PROJECT_ID= | ||
| FIREBASE_CLIENT_EMAIL= | ||
| FIREBASE_PRIVATE_KEY= | ||
| ``` | ||
|
|
||
| ### Firebase Web App Variables | ||
|
|
||
| From: | ||
|
|
||
| Firebase Console → Project Settings → General → Your Apps | ||
|
|
||
| Configure: | ||
|
|
||
| ```env | ||
| FIREBASE_API_KEY= | ||
| FIREBASE_AUTH_DOMAIN= | ||
| FIREBASE_MESSAGING_SENDER_ID= | ||
| FIREBASE_APP_ID= | ||
| ``` | ||
|
|
||
| --- | ||
|
|
||
| ## Step 3: Configure Session Authentication | ||
|
|
||
| Generate a secure session secret: | ||
|
|
||
| ```bash | ||
| openssl rand -hex 32 | ||
| ``` | ||
|
|
||
| Set: | ||
|
|
||
| ```env | ||
| SESSION_SECRET= | ||
| ``` | ||
|
|
||
| Requirements: | ||
|
|
||
| * Minimum 32 characters | ||
| * Must remain private | ||
| * Do not commit to version control | ||
|
|
||
| --- | ||
|
|
||
| ## Step 4: Configure GitHub Integration | ||
|
|
||
| Create a GitHub Personal Access Token. | ||
|
|
||
| Steps: | ||
|
|
||
| 1. Open GitHub Settings | ||
| 2. Navigate to Developer Settings | ||
| 3. Select Personal Access Tokens | ||
| 4. Generate a new token | ||
|
|
||
| Required permission: | ||
|
|
||
| ```text | ||
| repo | ||
| ``` | ||
|
|
||
| Configure: | ||
|
|
||
| ```env | ||
| GITHUB_TOKEN= | ||
| ``` | ||
|
|
||
| --- | ||
|
|
||
| ## Step 5: Configure Upstash Redis | ||
|
|
||
| ### Create Database | ||
|
|
||
| 1. Create an Upstash account | ||
| 2. Create a Redis database | ||
| 3. Open the database dashboard | ||
|
|
||
| Copy: | ||
|
|
||
| ```env | ||
| UPSTASH_REDIS_REST_URL= | ||
| UPSTASH_REDIS_REST_TOKEN= | ||
| ``` | ||
|
|
||
| These values are used for: | ||
|
|
||
| * Edge redirects | ||
| * Rate limiting | ||
| * Caching | ||
|
|
||
| --- | ||
|
|
||
| ## Step 6: Configure Server Settings | ||
|
|
||
| Local development: | ||
|
|
||
| ```env | ||
| PORT=3000 | ||
| BASE_URL=http://localhost:3000 | ||
| ``` | ||
|
|
||
| Adjust if running on a different port. |
There was a problem hiding this comment.
Major: Distinguish between required and optional environment variables.
The documentation presents all environment variables as if they're equally important, but cross-referencing with the server startup validation code reveals that only 4 variables are strictly required for the server to start:
- FIREBASE_PROJECT_ID
- FIREBASE_CLIENT_EMAIL
- FIREBASE_PRIVATE_KEY
- SESSION_SECRET
All other documented variables (Firebase web app config, GITHUB_TOKEN, Upstash Redis, PORT, BASE_URL) appear to be optional or feature-specific. This distinction is critical for the PR's stated goal of "faster contributor onboarding" because:
- New contributors may waste time setting up optional services thinking they're required
- The lack of clear prioritization makes the setup process seem more complex than necessary
- Users need to know the minimum viable configuration to get started
Consider restructuring the guide to clearly separate "Required Configuration" from "Optional Features" or using visual indicators (badges, notes) to mark which variables are strictly required vs optional.
♻️ Suggested restructuring approach
Add a summary section after Prerequisites:
## Configuration Overview
### Required Variables (Server will not start without these)
The following variables MUST be configured:
- `FIREBASE_PROJECT_ID` - Firebase Admin SDK
- `FIREBASE_CLIENT_EMAIL` - Firebase Admin SDK
- `FIREBASE_PRIVATE_KEY` - Firebase Admin SDK
- `SESSION_SECRET` - Minimum 32 characters
### Optional Variables (Enable additional features)
- Firebase Web App variables - For client-side Firebase features
- `GITHUB_TOKEN` - For bug reporting integration
- `UPSTASH_REDIS_REST_URL` & `UPSTASH_REDIS_REST_TOKEN` - For persistent caching and edge redirects
- `PORT` & `BASE_URL` - Server configuration (have defaults)
---Then update each step to indicate whether it's required or optional.
🧰 Tools
🪛 LanguageTool
[uncategorized] ~137-~137: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...alues are used for: * Edge redirects * Rate limiting * Caching --- ## Step 6: Configure Se...
(EN_COMPOUND_ADJECTIVE_INTERNAL)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@ENVIORNMENT_SETUP.md` around lines 3 - 151, The doc currently treats all
environment variables as equal; update the guide to clearly separate "Required
Variables" (server will not start without) from "Optional Variables" and mark
them inline in steps: list FIREBASE_PROJECT_ID, FIREBASE_CLIENT_EMAIL,
FIREBASE_PRIVATE_KEY and SESSION_SECRET (note SESSION_SECRET min 32 chars) under
a new "Required Variables" / "Configuration Overview" section, and mark Firebase
web app vars (FIREBASE_API_KEY, FIREBASE_AUTH_DOMAIN,
FIREBASE_MESSAGING_SENDER_ID, FIREBASE_APP_ID), GITHUB_TOKEN,
UPSTASH_REDIS_REST_URL, UPSTASH_REDIS_REST_TOKEN, PORT and BASE_URL as
optional/feature-specific; update Step 1/Step 2/Step 5/Step 6 text to annotate
each step/variable as REQUIRED or OPTIONAL and keep the minimal example cp
instruction as-is so contributors know the minimum to run the server.
| ### Firebase Web App Variables | ||
|
|
||
| From: | ||
|
|
||
| Firebase Console → Project Settings → General → Your Apps | ||
|
|
||
| Configure: | ||
|
|
||
| ```env | ||
| FIREBASE_API_KEY= | ||
| FIREBASE_AUTH_DOMAIN= | ||
| FIREBASE_MESSAGING_SENDER_ID= | ||
| FIREBASE_APP_ID= | ||
| ``` |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Description: Search for usage of Firebase web app configuration variables
echo "Checking for FIREBASE_API_KEY usage:"
rg -n 'FIREBASE_API_KEY' --type-add 'config:*.{js,ts,json,env*}' --type config
echo -e "\nChecking for FIREBASE_AUTH_DOMAIN usage:"
rg -n 'FIREBASE_AUTH_DOMAIN' --type-add 'config:*.{js,ts,json,env*}' --type config
echo -e "\nChecking for FIREBASE_MESSAGING_SENDER_ID usage:"
rg -n 'FIREBASE_MESSAGING_SENDER_ID' --type-add 'config:*.{js,ts,json,env*}' --type config
echo -e "\nChecking for FIREBASE_APP_ID usage:"
rg -n 'FIREBASE_APP_ID' --type-add 'config:*.{js,ts,json,env*}' --type config
echo -e "\nChecking .env.example for these variables:"
cat .env.example | grep -E '(FIREBASE_API_KEY|FIREBASE_AUTH_DOMAIN|FIREBASE_MESSAGING_SENDER_ID|FIREBASE_APP_ID)'Repository: xthxr/piik.me
Length of output: 661
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# 1) Locate server startup/validation logic
echo "Finding server.js (or similar) files:"
fd -t f -a server.js -a --hidden --no-ignore -S . 2>/dev/null || true
fd -t f -a server.*.js --hidden --no-ignore -S . 2>/dev/null || true
fd -t f -g '*server*.js' --hidden --no-ignore -S . 2>/dev/null || true
echo
echo "Searching for env validation for FIREBASE_* and SESSION_SECRET:"
rg -n "SESSION_SECRET|FIREBASE_PROJECT_ID|FIREBASE_CLIENT_EMAIL|FIREBASE_PRIVATE_KEY" --type-add 'js:*.{js,ts}' --type js .
echo
# 2) Confirm whether server-side code mentions the web app vars anywhere
echo
echo "Searching for web app vars in JS/TS sources (not just .env.example):"
rg -n "FIREBASE_API_KEY|FIREBASE_AUTH_DOMAIN|FIREBASE_MESSAGING_SENDER_ID|FIREBASE_APP_ID" --glob '!**/.env.example' --glob '!**/node_modules/**' --glob '!**/.git/**' .
echo
# 3) Check if any client Firebase init uses those vars (frontend code)
echo
echo "Searching frontend for Firebase initialization calls:"
rg -n "firebase(app)?|initializeApp|getFirestore|getAuth|getMessaging|firebaseConfig" --glob '!**/node_modules/**' --glob '!**/.git/**' .Repository: xthxr/piik.me
Length of output: 50369
Clarify (or remove) the documented Firebase web app env vars
server.js only requires/validates FIREBASE_PROJECT_ID, FIREBASE_CLIENT_EMAIL, FIREBASE_PRIVATE_KEY, and SESSION_SECRET; the documented FIREBASE_API_KEY, FIREBASE_AUTH_DOMAIN, FIREBASE_MESSAGING_SENDER_ID, and FIREBASE_APP_ID env vars are not referenced anywhere in the server or client code (they only appear in ENVIORNMENT_SETUP.md / .env.example).
Frontend Firebase is initialized via public/js/firebase-config.js (with public/js/firebase-config.example.js as a template), so the docs should state that these vars are unused as runtime env vars (or update the setup instructions to match how firebase-config.js is configured).
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@ENVIORNMENT_SETUP.md` around lines 55 - 68, The README currently lists
Firebase web app env vars (FIREBASE_API_KEY, FIREBASE_AUTH_DOMAIN,
FIREBASE_MESSAGING_SENDER_ID, FIREBASE_APP_ID) that are not used by the server;
update ENVIORNMENT_SETUP.md to either remove those vars or explicitly mark them
as client-side-only and instruct developers to populate client config via
public/js/firebase-config.js (see public/js/firebase-config.example.js) while
clarifying that the server expects FIREBASE_PROJECT_ID, FIREBASE_CLIENT_EMAIL,
FIREBASE_PRIVATE_KEY and SESSION_SECRET (as validated in server.js); also mirror
this change in .env.example so runtime envs reflect what server.js actually
requires.
| ## Step 4: Configure GitHub Integration | ||
|
|
||
| Create a GitHub Personal Access Token. | ||
|
|
||
| Steps: | ||
|
|
||
| 1. Open GitHub Settings | ||
| 2. Navigate to Developer Settings | ||
| 3. Select Personal Access Tokens | ||
| 4. Generate a new token | ||
|
|
||
| Required permission: | ||
|
|
||
| ```text | ||
| repo | ||
| ``` | ||
|
|
||
| Configure: | ||
|
|
||
| ```env | ||
| GITHUB_TOKEN= | ||
| ``` |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Description: Check how GITHUB_TOKEN is used and whether it's required
echo "Searching for GITHUB_TOKEN usage:"
rg -n 'GITHUB_TOKEN' -C 3
echo -e "\nChecking if GITHUB_TOKEN is in required validation:"
rg -n "required.*GITHUB_TOKEN|GITHUB_TOKEN.*required" server.js
echo -e "\nChecking .env.example:"
grep -n "GITHUB_TOKEN" .env.example || echo "Not found in .env.example"Repository: xthxr/piik.me
Length of output: 1808
Clarify GITHUB_TOKEN is optional (only required for bug reporting)
ENVIORNMENT_SETUP.md presents GITHUB_TOKEN as part of required setup, but server.js uses it only when calling GitHub in POST /api/bug-report (Authorization: Bearer ${process.env.GITHUB_TOKEN}); startup validation doesn’t include it. Update the docs (around lines 94–115) to mark GITHUB_TOKEN as optional and required only if you use/enable bug reporting, and align with docs/PROJECT_STRUCTURE.md which already lists it under “Optional”.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@ENVIORNMENT_SETUP.md` around lines 94 - 115, Update ENVIORNMENT_SETUP.md to
mark GITHUB_TOKEN as optional and only required when using the bug-report
feature: change the text around the GitHub token steps to indicate "Optional —
required only if you enable or use the POST /api/bug-report endpoint" and align
the note with docs/PROJECT_STRUCTURE.md; reference the environment variable name
GITHUB_TOKEN and mention that server.js only uses it for Authorization when
creating bug reports so no startup validation is needed.
Related Issue
Closes #222
Summary
Added comprehensive documentation for environment variable configuration and external service setup to improve contributor onboarding and reduce setup-related issues.
Changes Made
New Documentation
Added:
Documentation Covers
README Updates
Added links to:
.env.exampledocs/ENVIRONMENT_SETUP.mddocs/FIREBASE_SETUP.mdBenefits
Verification
.env.exampleSummary by CodeRabbit