Skip to content

feat(firebase): support Firestore & Realtime DB as Preswald data sources #676

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

Yashika-01
Copy link
Contributor

Closes #527

What’s new

  • 🎉 Adds type = "firebase" support in preswald.toml for both Firestore (default) and Realtime Database.
  • Implements load_firebase_source() in preswald/engine/managers/data.py:
    • Validates credentials_path & project_id
    • Branches on mode = "firestore" vs. mode = "realtime"
    • Flattens nested JSON via pd.json_normalize(..., sep=".")
    • Handles missing collection / path errors and invalid modes
  • Introduces a FirebaseSource class in DataManager.connect() to register the DataFrame in DuckDB.
  • Updates docs:
    • docs/configuration.mdx: example preswald.toml snippets
    • docs/data‑sources.mdx: compatibility matrix row for firebase

Motivation

Many teams rely on Firebase for real‑time analytics and IoT feeds. This PR enables native, “no‑SQL” dashboards directly from Firestore or Realtime DB.

@Yashika-01
Copy link
Contributor Author

Hello,
I wanted to follow up and kindly ask if someone could review this pull request when convenient. Please let me know if there are any changes or clarifications needed. I'm happy to address any feedback.
Thank you!

@amrutha97 amrutha97 force-pushed the main branch 2 times, most recently from 6ac1dad to bdb2c4e Compare April 24, 2025 07:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FEATURE] Add Firebase as a Supported Data Source in preswald.toml
1 participant