Download the PHP package ogini/oginisearch-laravel-scout without Composer
On this page you can find all versions of the php package ogini/oginisearch-laravel-scout. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download ogini/oginisearch-laravel-scout
More information about ogini/oginisearch-laravel-scout
Files in ogini/oginisearch-laravel-scout
Package oginisearch-laravel-scout
Short Description OginiSearch Laravel Scout driver with PHP client - High-performance search engine integration
License MIT
Homepage https://github.com/ogini-search/oginisearch-laravel-scout
Informations about the package oginisearch-laravel-scout
OginiSearch Laravel Scout Driver
A comprehensive Laravel Scout driver for OginiSearch, providing full-text search capabilities with advanced features and performance optimizations.
Features
- Full Laravel Scout integration
- Advanced search capabilities
- Performance optimization with caching and connection pooling
- Asynchronous operations support
- Event-driven architecture
- Comprehensive error handling
- Query optimization and caching
- Synonym and stopword management
- Real-time search suggestions and autocomplete
Requirements
- PHP >= 8.2
- Laravel >= 12.0
- Laravel Scout >= 10.0
Installation
-
Install the package via Composer:
-
Publish the configuration file:
- Set up your OginiSearch configuration in
config/ogini.php
or via environment variables:
Configuration
The package provides extensive configuration options in config/ogini.php
:
Basic Usage
Model Configuration
Configure your Eloquent models to use OginiSearch:
Searching
Enhanced Laravel Integration
The package provides seamless Laravel request integration with automatic type casting for pagination parameters.
Automatic Type Casting
All pagination parameters automatically handle both integer and string values:
Laravel Request Validation Benefits
This enhancement eliminates common integration issues:
Supported Parameters
All pagination-related parameters support automatic string-to-integer conversion:
per_page
,perPage
- Results per page (minimum: 1)page
- Page number (minimum: 1)size
- Result size (minimum: 1)from
,offset
- Starting offset (minimum: 0)
Invalid values are automatically corrected to sensible minimums.
Advanced Features
1. Dynamic Model Discovery & Bulk Processing
The package includes a powerful dynamic model discovery system that automatically finds all searchable models in your Laravel application, making bulk operations seamless and universal.
Bulk Import Command
Import all your searchable models with a single command:
Dynamic Model Resolution
The system supports flexible model naming:
Bulk Processing Performance
- 500x performance improvement - reduces 1K API calls to just 2 calls
- 90% reduction in processing time for large datasets
- Automatic chunking and parallel processing
- Error resilience with automatic retry mechanisms
- Progress tracking with detailed statistics
Universal Compatibility
The dynamic system works with:
- Standard Laravel application structures
- Custom model namespaces
- Legacy Laravel applications
- Multi-tenant applications
- Packages with searchable models
2. Advanced Client Methods
Query Suggestions
Synonym Management
Stopword Configuration
2. Asynchronous Operations
Using the Async Client
Queue Integration
Parallel Execution
3. Event System
The package dispatches events for various operations, allowing you to listen and respond to search activities:
Available Events
IndexingCompleted
- When document indexing succeedsIndexingFailed
- When document indexing failsSearchCompleted
- When search operation succeedsSearchFailed
- When search operation failsDeletionCompleted
- When document deletion succeedsDeletionFailed
- When document deletion fails
Listening to Events
Custom Event Listener
4. Performance Features
Query Optimization
Caching
Connection Pooling
Batch Processing
Error Handling
The package provides comprehensive error handling with detailed exception information:
Update Management
The package includes an intelligent update checking system:
Check for Updates
Programmatic Update Checking
Testing
The package includes comprehensive testing with enterprise-grade quality assurance:
Test Coverage
- 430+ Tests: Complete functionality coverage
- 90%+ Code Coverage: Automated coverage validation
- Edge Case Testing: Boundary conditions and error scenarios
- Security Testing: Vulnerability and security validation
- Laravel Compatibility: Multi-version Laravel support (8.x-11.x)
Run Tests
Running Tests with Real API Calls
Some integration tests require a real Ogini server running locally. These tests are automatically skipped in CI/CD environments but can be run locally for comprehensive testing:
Note: Tests marked with @group real-api-calls
are excluded from CI pipelines and composer test
to ensure fast, reliable automated testing without external dependencies.
Quality Assurance
- PSR-12 Compliance: PHP coding standards
- Security Scanning: Vulnerability detection
- Code Quality Analysis: Complexity and duplication checks
- Documentation Coverage: PHPDoc requirements
Contributing
- Fork the repository
- Create a feature branch
- Write tests for your changes
- Ensure all tests pass
- Submit a pull request
License
This package is open-sourced software licensed under the MIT license.
All versions of oginisearch-laravel-scout with dependencies
guzzlehttp/guzzle Version ^7.0
laravel/framework Version ^10.0|^11.0
laravel/scout Version ^10.0