PHPackages                             tormjens/firestore - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. tormjens/firestore

ActiveLibrary[Database &amp; ORM](/categories/database)

tormjens/firestore
==================

Firestore SDK for Laravel

2.1.1(5mo ago)01.7k↓50%2MITPHP

Since Dec 17Pushed 4mo agoCompare

[ Source](https://github.com/tormjens/firestore-php)[ Packagist](https://packagist.org/packages/tormjens/firestore)[ Docs](https://github.com/tormjens/firestore-php)[ RSS](/packages/tormjens-firestore/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (3)Versions (23)Used By (0)

Firestore SDK for Laravel (without gRPC)
========================================

[](#firestore-sdk-for-laravel-without-grpc)

Leveraging the Google PHP API Client for communication.

Installation
------------

[](#installation)

This package is installed via Composer.

```
composer require tormjens/firestore

```

Due to Laravel's auto-discovery capabilities, the service provider is registerered automatically.

Usage
-----

[](#usage)

This package aims to create a fluent experience, preserving the feel of the Laravel framework.

### Getting started

[](#getting-started)

You first resolve Firestore out of the container.

```
use TorMorten\Firestore\Firestore;
$firestore = resolve(Firestore::class);
```

You can also resolve using dependency injection.

```
public function __construct(Factory $firestore)
{
    $this->firestore = $firestore;
}
```

You can now start grabbing stuff from Firestore. First you'll need to define the collection your looking into.

```
$collection = $firestore->collection('users');
```

You'll now have the collection at hand, and can either select all documents in that collection:

```
$documents = $collection->documents();
```

Or you can grab a single document:

```
$document = $collection->document('1234');
```

Be aware that the last one simply creates an instance of a document. If you want to fetch the document from firebase you'll have to add `->fetch()` to that call.

### Sample usage:

[](#sample-usage)

```
$collection = $firestore->collection('users');
$user = $collection->document('123456');

// Fetches the document from Firebase
$user->fetch();

// Create/update a document
$user->update(['name' => 'tormjens', 'role' => 'developer']);

// Get a document
echo $user->name; // tormjens

// Delete a document
$user->delete();
```

###  Health Score

48

—

FairBetter than 94% of packages

Maintenance75

Regular maintenance activity

Popularity21

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity70

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~93 days

Recently: every ~77 days

Total

20

Last Release

165d ago

Major Versions

1.0.4 → 2.0.02022-04-27

### Community

Maintainers

![](https://www.gravatar.com/avatar/16b2089f55ff5ab3154ef21caec78446d23b1515cc074d2d1c2bf184a9e64603?d=identicon)[tormjens](/maintainers/tormjens)

---

Top Contributors

[![morrislaptop](https://avatars.githubusercontent.com/u/67807?v=4)](https://github.com/morrislaptop "morrislaptop (33 commits)")[![tormjens](https://avatars.githubusercontent.com/u/3974889?v=4)](https://github.com/tormjens "tormjens (32 commits)")[![piperone](https://avatars.githubusercontent.com/u/351744?v=4)](https://github.com/piperone "piperone (2 commits)")[![neilvs](https://avatars.githubusercontent.com/u/7439665?v=4)](https://github.com/neilvs "neilvs (1 commits)")

---

Tags

apisdkgoogledatabasefirestore

### Embed Badge

![Health badge](/badges/tormjens-firestore/health.svg)

```
[![Health](https://phpackages.com/badges/tormjens-firestore/health.svg)](https://phpackages.com/packages/tormjens-firestore)
```

###  Alternatives

[kreait/firebase-php

Firebase Admin SDK

2.4k39.7M72](/packages/kreait-firebase-php)[kreait/laravel-firebase

A Laravel package for the Firebase PHP Admin SDK

1.3k16.5M42](/packages/kreait-laravel-firebase)[kreait/firebase-bundle

Symfony Bundle for the Firebase Admin SDK

1534.7M2](/packages/kreait-firebase-bundle)[morrislaptop/firestore-php

Firestore SDK for PHP without gRPC

6928.6k1](/packages/morrislaptop-firestore-php)[codewithkyrian/chromadb-laravel

ChromaDB Laravel is a Laravel client for the Chroma Open Source Embedding Database

144.1k](/packages/codewithkyrian-chromadb-laravel)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
