pimphand / firemoo
Laravel package for Firestore-like API and WebSocket integration
Installs: 2
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/pimphand/firemoo
Requires
- php: ^8.2
- illuminate/http: ^10.0|^11.0|^12.0
- illuminate/support: ^10.0|^11.0|^12.0
Requires (Dev)
- mockery/mockery: ^1.6
- phpunit/phpunit: ^10.0
This package is auto-updated.
Last update: 2025-12-14 07:00:57 UTC
README
Laravel package untuk integrasi dengan Firestore-like API dan WebSocket realtime.
Features
- ✅ Firestore-like API integration (Collections & Documents)
- ✅ WebSocket realtime connections
- ✅ Clean code architecture dengan dependency injection
- ✅ File-based logging (bukan console)
- ✅ Support API Key dan JWT authentication
- ✅ Laravel Facades untuk kemudahan penggunaan
- ✅ Fully tested dan documented
Installation
Install package via Composer:
composer require pimphand/firemoo
Configuration
Tambahkan ke .env:
FIRESTORE_API_URL=http://127.0.0.1:9090 FIRESTORE_WS_URL=ws://127.0.0.1:9090/websocket FIRESTORE_AUTH_METHOD=api_key FIRESTORE_API_KEY=your-api-key FIRESTORE_WEBSITE_URL=https://your-website.com
Quick Start
Firestore Operations
use Firemoo\Firemoo\Facades\Firestore; // Create collection $collection = Firestore::createCollection('tasks'); // Create document $document = Firestore::createDocument($collectionId, [ 'title' => 'Task 1', 'status' => 'pending' ]); // Get documents $documents = Firestore::getDocuments($collectionId, page: 1, limit: 10);
WebSocket Operations
use Firemoo\Firemoo\Facades\WebSocket; // Connect $socket = WebSocket::connect( apiKey: 'your-api-key', websiteUrl: 'https://your-website.com' ); // Subscribe to channel WebSocket::subscribe($socket, 'tasks'); // Read messages while (true) { $message = WebSocket::read($socket, timeout: 30); if ($message) { // Handle message } }
Documentation
Lihat FIREMOO_USAGE.md untuk dokumentasi lengkap.
Requirements
- PHP >= 8.2
- Laravel >= 10.0
License
The MIT License (MIT). Please see License File for more information.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Support
Jika ada pertanyaan atau issue, silakan buat issue di GitHub repository.