{"id":18818721,"url":"https://github.com/kreait/firebase-bundle","last_synced_at":"2025-04-13T00:44:09.954Z","repository":{"id":26284874,"uuid":"29732465","full_name":"kreait/firebase-bundle","owner":"kreait","description":"A Symfony Bundle for the Firebase PHP Admin SDK","archived":false,"fork":false,"pushed_at":"2025-01-27T01:33:36.000Z","size":263,"stargazers_count":145,"open_issues_count":1,"forks_count":28,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-04-13T00:44:02.211Z","etag":null,"topics":["firebase","firebase-admin","firebase-admin-sdk","firebase-auth","firebase-authentication","firebase-cloud-messaging","firebase-database","firebase-db","firebase-firestore","firebase-storage","firestore","php","realtime-database","symfony","symfony-bundle"],"latest_commit_sha":null,"homepage":"https://github.com/kreait/firebase-php","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kreait.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null},"funding":{"github":"jeromegamez"}},"created_at":"2015-01-23T12:55:59.000Z","updated_at":"2025-04-12T16:50:56.000Z","dependencies_parsed_at":"2024-01-24T16:50:04.944Z","dependency_job_id":"1e6200c4-58a6-4ce6-a7f8-87ed5bd98054","html_url":"https://github.com/kreait/firebase-bundle","commit_stats":{"total_commits":128,"total_committers":11,"mean_commits":"11.636363636363637","dds":0.25,"last_synced_commit":"c738af10878c3c717fe5937a31c2c3155c1011b7"},"previous_names":[],"tags_count":37,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kreait%2Ffirebase-bundle","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kreait%2Ffirebase-bundle/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kreait%2Ffirebase-bundle/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kreait%2Ffirebase-bundle/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kreait","download_url":"https://codeload.github.com/kreait/firebase-bundle/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248650419,"owners_count":21139672,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["firebase","firebase-admin","firebase-admin-sdk","firebase-auth","firebase-authentication","firebase-cloud-messaging","firebase-database","firebase-db","firebase-firestore","firebase-storage","firestore","php","realtime-database","symfony","symfony-bundle"],"created_at":"2024-11-08T00:18:03.530Z","updated_at":"2025-04-13T00:44:09.920Z","avatar_url":"https://github.com/kreait.png","language":"PHP","readme":"# Firebase SDK Bundle\n\nA Symfony Bundle for the [Firebase PHP SDK](https://github.com/kreait/firebase-php).\n\n[![Current version](https://img.shields.io/packagist/v/kreait/firebase-bundle.svg?logo=composer)](https://packagist.org/packages/kreait/firebase-bundle)\n[![Monthly Downloads](https://img.shields.io/packagist/dm/kreait/firebase-bundle.svg)](https://packagist.org/packages/kreait/firebase-bundle/stats)\n[![Total Downloads](https://img.shields.io/packagist/dt/kreait/firebase-bundle.svg)](https://packagist.org/packages/kreait/firebase-bundle/stats)\n[![Tests](https://github.com/kreait/firebase-bundle/actions/workflows/tests.yml/badge.svg)](https://github.com/kreait/firebase-bundle/actions/workflows/tests.yml)\n[![Sponsor](https://img.shields.io/static/v1?logo=GitHub\u0026label=Sponsor\u0026message=%E2%9D%A4\u0026color=ff69b4)](https://github.com/sponsors/jeromegamez)\n\n---\n\n## The future of the Firebase Admin PHP SDK\n\nPlease read about the future of the Firebase Admin PHP SDK on the\n[SDK's GitHub Repository](https://github.com/kreait/firebase-php).\n\n---\n\n- [Overview](#overview)\n- [Installation](#installation)\n- [Supported Versions](#supported-versions)\n- [Documentation](#documentation)\n- [License](#license)\n\n## Overview\n\n[Firebase](https://firebase.google.com/) provides the tools and infrastructure you need to develop your app, grow your user base, and earn money. The Firebase Admin PHP SDK enables access to Firebase services from privileged environments (such as servers or cloud) in PHP.\n\nFor more information, visit the [Firebase Admin PHP SDK documentation](https://firebase-php.readthedocs.io/).\n\n## Installation\n\nAdd the bundle using [Composer](https://getcomposer.org)\n\n```bash\ncomposer require kreait/firebase-bundle\n```\n\n```php\n// Symfony without Flex\n// in %kernel.root_dir%/AppKernel.php\n$bundles = array(\n    // ...\n    new Kreait\\Firebase\\Symfony\\Bundle\\FirebaseBundle(),\n);\n\n// Symfony with Flex\n// in config/bundles.php\nreturn [\n    // ...\n    Kreait\\Firebase\\Symfony\\Bundle\\FirebaseBundle::class =\u003e ['all' =\u003e true],\n];\n```\n\n## Supported Versions\n\n**Only the latest version is actively supported.**\n\nEarlier versions will receive security fixes as long as their **lowest** SDK requirement receives security fixes. You\ncan find the currently supported versions and support options in the [SDK's README](https://github.com/kreait/firebase-php).\n\n| Version | Initial Release | Supported SDK Versions | Supported Symfony Versions | Status      |\n|---------|-----------------|------------------------|----------------------------|-------------|\n| `5.x`   | 23 Jan 2023     | `^7.0`                 | `^5.4, ^6.0`               | Active      |\n| `4.x`   | 09 Jan 2022     | `^6.0`                 | `^5.4, ^6.0`               | End of life |\n| `3.x`   | 30 Nov 2021     | `^5.25`                | `^5.4, ^6.0`               | End of life |\n| `2.x`   | 01 Apr 2020     | `^5.0`                 | `^3.4.26, ^4.2, ^5.0`      | End of life |\n| `1.x`   | 06 Apr 2018     | `^4.35`                | `^3.4, ^4.2, ^5.0`         | End of life |\n| `0.x`   | 23 Jan 2015     | `0.9.*`                | `^2.0, ^3.0`               | End of life |\n\n## Configuration\n\n### Minimal\n\n```yaml\n# app/config/config.yml (Symfony without Flex)\n# config/packages/firebase.yaml (Symfony with Flex)\nkreait_firebase:\n    projects:\n        my_project:\n            credentials: '%kernel.project_dir%/config/my_project_credentials.json'\n        other_project: # optional\n            credentials: '%kernel.project_dir%/config/other_project_credentials.json'\n```\n\nThe following services will be available for your project:\n\n* `kreait_firebase.my_project.app_check`\n* `kreait_firebase.my_project.auth`\n* `kreait_firebase.my_project.database`\n* `kreait_firebase.my_project.firestore`\n* `kreait_firebase.my_project.messaging`\n* `kreait_firebase.my_project.remote_config`\n* `kreait_firebase.my_project.storage`\n* `kreait_firebase.my_project.dynamic_links`\n* `kreait_firebase.other_project.*`\n\nThe following classes will be available for dependency injection if you have configured only one project:\n\n* `Kreait\\Firebase\\Contract\\AppCheck`\n* `Kreait\\Firebase\\Contract\\Auth`\n* `Kreait\\Firebase\\Contract\\Database`\n* `Kreait\\Firebase\\Contract\\Firestore`\n* `Kreait\\Firebase\\Contract\\Messaging`\n* `Kreait\\Firebase\\Contract\\RemoteConfig`\n* `Kreait\\Firebase\\Contract\\Storage`\n* `Kreait\\Firebase\\Contract\\DynamicLinks`\n\nTo make it easier to use classes via dependency injection in the constructor of a class when multiple projects exist, you can do this in the constructor:\n\n* `Kreait\\Firebase\\Contract\\AppCheck $myProjectAppCheck`\n* `Kreait\\Firebase\\Contract\\Auth $myProjectAuth`\n* `Kreait\\Firebase\\Contract\\Database $myProjectDatabase`\n* `Kreait\\Firebase\\Contract\\Firestore $myProjectFirestore`\n* `Kreait\\Firebase\\Contract\\Messaging $myProjectMessaging`\n* `Kreait\\Firebase\\Contract\\RemoteConfig $myProjectRemoteConfig`\n* `Kreait\\Firebase\\Contract\\Storage $myProjectStorage`\n* `Kreait\\Firebase\\Contract\\DynamicLinks $myProjectDynamicLinks`\n\n### Full\n\n```yaml\n# app/config/config.yml (Symfony without Flex)\n# config/packages/firebase.yaml (Symfony with Flex)\nkreait_firebase:\n    projects:\n        my_project:\n            # Optional: Path to the project's Service Account credentials file\n            # If omitted, the credentials will be auto-discovered as described\n            # in https://firebase-php.readthedocs.io/en/stable/setup.html\n            credentials: '%kernel.project_dir%/config/my_project_credentials.json'\n            # Optional: Override the project being used\n            # If omitted, the project is automatically derived, e.g. from credentials\n            project_id: 'project-b'\n            # Optional: If set to true, this project will be used when \n            # type hinting the component classes of the Firebase SDK,\n            # e.g. Kreait\\Firebase\\Auth, Kreait\\Firebase\\Database,\n            # Kreait\\Firebase\\Messaging, etc.\n            default: false \n            # Optional: If set to false, the service and its alias can only be\n            # used via dependency injection, and not be retrieved from the\n            # container directly.\n            public: true\n            # Optional: Should only be used if the URL of your Realtime\n            # Database can not be generated with the project id of the \n            # given Service Account\n            database_uri: 'https://my_project.firebaseio.com'\n            # Optional: Make the client tenant aware\n            tenant_id: 'tenant-id'\n            # Optional: Default domain for Dynamic Links\n            default_dynamic_links_domain: 'https://my_project.page.link'\n            # Optional: Used to cache Google's public keys.\n            verifier_cache: null # Example: cache.app\n            # Optional: Used to cache the authentication tokens for connecting to the Firebase servers.\n            auth_token_cache: null # Example: cache.app\n            # If set, logs simple HTTP request and response statuses\n            http_request_logger:  null # Example: monolog.logger.firebase\n            # If set, logs detailed HTTP request and response statuses\n            http_request_debug_logger: null # Example: monolog.logger.firebase_debug\n```\n\n## Documentation\n\nFor documentation of the underlying SDK, visit the [Firebase Admin PHP SDK documentation](https://firebase-php.readthedocs.io/).\n\n## License\n\nThis project is licensed under the [MIT License](LICENSE).\n\nYour use of Firebase is governed by the [Terms of Service for Firebase Services](https://firebase.google.com/terms/).\n","funding_links":["https://github.com/sponsors/jeromegamez"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkreait%2Ffirebase-bundle","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkreait%2Ffirebase-bundle","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkreait%2Ffirebase-bundle/lists"}