Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
160 changes: 160 additions & 0 deletions docs/PRIVACY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,160 @@
# Privacy Policy for Firebase Tools CLI

**Last Updated:** March 7, 2026

## Overview

Firebase Tools CLI ("we", "our", or "the application") is a command-line interface tool that helps users manage their Firebase resources including Firestore, Realtime Database, and Remote Config. This privacy policy explains how we handle your data when you use our application.

## Information We Collect

### Authentication Data

When you authenticate with Firebase Tools CLI, we collect and store:

- **Google Account Email Address**: Used to identify your account and display authentication status
- **OAuth Access Tokens**: Temporary tokens that allow the application to access Firebase APIs on your behalf
- **OAuth Refresh Tokens**: Used to obtain new access tokens when they expire
- **Firebase Project IDs**: The IDs of Firebase projects you choose to work with

### Service Account Data (Optional Authentication Method)

If you choose to authenticate using a service account:

- **Service Account Key File Path**: The local file path to your service account JSON file
- **Service Account Project ID**: The Firebase project associated with the service account

### Configuration Data

- **Default Project Selection**: Your chosen default Firebase project
- **Authentication Method Preference**: Whether you're using OAuth or service account authentication

## How We Store Your Data

### Local Storage Only

**All data is stored exclusively on your local machine** in the following location:

```
~/.firebase-tools-cli/
├── config.json (authentication method, default project)
└── credentials.json (OAuth tokens - OAuth method only)
```

**We do NOT:**

- Send your data to any remote servers (except Google/Firebase APIs)
- Store your data in any cloud services
- Collect analytics or telemetry
- Track your usage
- Share your data with third parties

### Security Measures

- Credential files are stored with restricted file permissions on your local system
- OAuth tokens are encrypted in transit when communicating with Google APIs
- Service account keys remain as files on your system and are never transmitted except to Firebase APIs

## How We Use Your Data

Your data is used exclusively for the following purposes:

1. **Authentication**: To verify your identity with Google/Firebase services
2. **API Access**: To make authorized requests to Firebase APIs on your behalf
3. **Project Management**: To remember your default project and preferences
4. **Token Refresh**: To automatically refresh expired tokens for continuous access

## Data Sharing and Third Parties

### Google/Firebase APIs

Your authentication tokens are sent to Google/Firebase APIs to:

- Authenticate your requests
- Access your Firebase projects
- Manage Firestore, Realtime Database, and Remote Config data

**We only share data with Google/Firebase** - the services you're explicitly trying to access.

### No Other Third Parties

We do not share, sell, rent, or trade your data with any other third parties.

## Data Retention

### OAuth Tokens

- Access tokens expire after 1 hour (managed by Google)
- Refresh tokens remain valid until revoked
- You can delete all tokens at any time using `firebase-tools-cli reset`

### Configuration Data

- Stored indefinitely on your local machine
- Can be deleted at any time using `firebase-tools-cli reset`

## Your Rights and Choices

### Access Your Data

All your data is stored locally at `~/.firebase-tools-cli/`. You can view it anytime.

### Delete Your Data

You can delete all authentication data and configuration using:

```bash
firebase-tools-cli reset
```

Or manually delete the directory:

```bash
rm -rf ~/.firebase-tools-cli
```

### Revoke Access

You can revoke Firebase Tools CLI's access to your Google account at any time:

1. Visit [Google Account Permissions](https://myaccount.google.com/permissions)
2. Find "firebase-tools-cli"
3. Click "Remove Access"

## Children's Privacy

Firebase Tools CLI is not intended for use by children under 13 years of age. We do not knowingly collect data from children.

## Open Source

Firebase Tools CLI is open source software. You can review our code at:
[https://github.com/omer-ayhan/firebase-tools-cli](https://github.com/omer-ayhan/firebase-tools-cli)

## Changes to This Policy

We may update this privacy policy from time to time. Changes will be posted in this document with an updated "Last Updated" date.

## Data Protection Rights (GDPR/CCPA)

If you are located in the European Union or California, you have additional rights:

- **Right to Access**: Request copies of your data (stored locally on your machine)
- **Right to Rectification**: Update your authentication or configuration
- **Right to Erasure**: Delete all data using the `reset` command
- **Right to Data Portability**: Export your configuration from local JSON files
- **Right to Object**: Stop using the application and delete all data

## Contact

For questions or concerns about this privacy policy or data handling:

- **GitHub Issues**: [https://github.com/omer-ayhan/firebase-tools-cli/issues](https://github.com/omer-ayhan/firebase-tools-cli/issues)
- **Repository Owner**: [https://github.com/omer-ayhan](https://github.com/omer-ayhan)

## Consent

By using Firebase Tools CLI, you consent to this privacy policy and our data handling practices as described above.

---

**Important Note**: Firebase Tools CLI is an independent tool and is not officially affiliated with or endorsed by Google or Firebase. Your use of Firebase services through this tool is subject to [Google's Privacy Policy](https://policies.google.com/privacy) and [Firebase Terms of Service](https://firebase.google.com/terms).
224 changes: 224 additions & 0 deletions docs/TERMS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,224 @@
# Terms of Service for Firebase Tools CLI

**Last Updated:** March 7, 2026

## Acceptance of Terms

By installing, accessing, or using Firebase Tools CLI ("the Application"), you agree to be bound by these Terms of Service ("Terms"). If you do not agree to these Terms, do not use the Application.

## Description of Service

Firebase Tools CLI is an open-source command-line interface tool that provides utilities for managing Firebase resources, including:

- Firebase Authentication
- Cloud Firestore database operations (export, import, query, list)
- Firebase Realtime Database operations (export, import, query, list)
- Firebase Remote Config management
- Firebase project management

## License

Firebase Tools CLI is licensed under the MIT License. You can view the full license at:
[https://github.com/omer-ayhan/firebase-tools-cli/blob/main/LICENSE.txt](https://github.com/omer-ayhan/firebase-tools-cli/blob/main/LICENSE.txt)

## User Responsibilities

### Account Security

You are responsible for:

- Maintaining the confidentiality of your authentication credentials
- All activities that occur under your authentication
- Securing your local machine where credentials are stored
- Immediately notifying us of any unauthorized use of your credentials

### Acceptable Use

You agree to:

- Use the Application only for lawful purposes
- Comply with all applicable laws and regulations
- Respect Google/Firebase Terms of Service
- Not use the Application to access Firebase projects you don't have permission to access
- Not attempt to circumvent any security features
- Not use the Application in any way that could harm, disable, or impair the service

### Prohibited Activities

You may NOT:

- Use the Application to violate any laws or regulations
- Access Firebase projects without proper authorization
- Use the Application to transmit malware, viruses, or malicious code
- Attempt to reverse engineer, decompile, or disassemble the Application (except as permitted by open-source license)
- Use the Application to harass, abuse, or harm others
- Impersonate others or misrepresent your affiliation
- Interfere with or disrupt the Application or Firebase services

## Firebase and Google Services

### Third-Party Services

Firebase Tools CLI interacts with Google and Firebase services. Your use of these services is governed by:

- [Google Terms of Service](https://policies.google.com/terms)
- [Firebase Terms of Service](https://firebase.google.com/terms)
- [Google API Services User Data Policy](https://developers.google.com/terms/api-services-user-data-policy)

You must comply with all applicable Google and Firebase terms and policies.

### Not an Official Google/Firebase Tool

Firebase Tools CLI is an independent, community-created tool and is NOT:

- Officially endorsed by Google or Firebase
- Supported by Google or Firebase
- A Google or Firebase product

## Data and Privacy

Your use of the Application is subject to our [Privacy Policy](https://github.com/omer-ayhan/firebase-tools-cli/blob/main/docs/PRIVACY.md).

Key points:

- All credentials stored locally on your machine
- No data sent to third parties except Google/Firebase APIs
- You can delete all data at any time using `firebase-tools-cli reset`

## Disclaimer of Warranties

THE APPLICATION IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO:

- Warranties of merchantability
- Fitness for a particular purpose
- Non-infringement
- Uninterrupted or error-free operation
- Accuracy or reliability of data

**You use the Application at your own risk.**

## Limitation of Liability

TO THE MAXIMUM EXTENT PERMITTED BY LAW, THE DEVELOPERS AND CONTRIBUTORS OF FIREBASE TOOLS CLI SHALL NOT BE LIABLE FOR:

- Any indirect, incidental, special, consequential, or punitive damages
- Loss of profits, data, use, or goodwill
- Service interruption or data loss
- Any damages arising from your use or inability to use the Application
- Any damages arising from unauthorized access to your data

**This limitation applies even if we have been advised of the possibility of such damages.**

## Indemnification

You agree to indemnify and hold harmless the developers, contributors, and maintainers of Firebase Tools CLI from any claims, damages, losses, liabilities, and expenses (including legal fees) arising from:

- Your use of the Application
- Your violation of these Terms
- Your violation of any third-party rights
- Your violation of applicable laws or regulations

## Updates and Modifications

### Application Updates

We may update the Application at any time without notice. Updates may:

- Add new features
- Remove or modify existing features
- Fix bugs or security issues
- Require you to update to continue using the Application

### Terms Updates

We reserve the right to modify these Terms at any time. Changes will be posted with an updated "Last Updated" date. Your continued use of the Application after changes constitutes acceptance of the modified Terms.

## Termination

### By You

You may stop using the Application at any time. To completely remove all data:

```bash
firebase-tools-cli reset
```

### By Us

We reserve the right to terminate or suspend your access to the Application if:

- You violate these Terms
- You engage in fraudulent or illegal activities
- Required by law or legal process
- The Application is discontinued

## Support and Maintenance

### No Guaranteed Support

Firebase Tools CLI is provided as-is with no guaranteed support. While we strive to maintain and improve the Application, we do not guarantee:

- Response to bug reports or feature requests
- Ongoing maintenance or updates
- Compatibility with future Firebase API changes

### Community Support

Support is provided on a best-effort basis through:

- [GitHub Issues](https://github.com/omer-ayhan/firebase-tools-cli/issues)
- [GitHub Discussions](https://github.com/omer-ayhan/firebase-tools-cli/discussions)
- Community contributions

## Open Source Contributions

Contributions to Firebase Tools CLI are welcome under the terms of the MIT License. By contributing, you agree that your contributions will be licensed under the same license.

## Intellectual Property

### Our Rights

Firebase Tools CLI and its original content, features, and functionality are owned by the project maintainers and are protected by international copyright, trademark, and other intellectual property laws.

### Third-Party Rights

"Firebase" and "Google" are trademarks of Google LLC. We do not claim any ownership or affiliation with these trademarks.

## Governing Law

These Terms shall be governed by and construed in accordance with the laws of the jurisdiction in which the project maintainer resides, without regard to its conflict of law provisions.

## Dispute Resolution

Any disputes arising from these Terms or your use of the Application shall be resolved through:

1. **Informal Resolution**: Contact us through GitHub Issues first
2. **Mediation**: If informal resolution fails, we agree to attempt mediation
3. **Arbitration or Litigation**: As a last resort, in accordance with applicable law

## Severability

If any provision of these Terms is found to be unenforceable or invalid, that provision shall be limited or eliminated to the minimum extent necessary, and the remaining provisions shall remain in full force and effect.

## Entire Agreement

These Terms, along with the Privacy Policy, constitute the entire agreement between you and Firebase Tools CLI regarding your use of the Application.

## Contact

For questions about these Terms:

- **GitHub Issues**: [https://github.com/omer-ayhan/firebase-tools-cli/issues](https://github.com/omer-ayhan/firebase-tools-cli/issues)
- **Repository Owner**: [https://github.com/omer-ayhan](https://github.com/omer-ayhan)

## Acknowledgment

By using Firebase Tools CLI, you acknowledge that:

- You have read these Terms
- You understand these Terms
- You agree to be bound by these Terms

---

**Thank you for using Firebase Tools CLI!**