# ElasticLens > ElasticLens creates and syncs searchable Elasticsearch indexes from your Laravel SQL models. Define field mappings, embed relationships as nested objects, and search with the full power of the Elasticsearch query builder - all returning your original Laravel models. - Package: pdphilip/elasticlens v4 for Laravel 10, 11 & 12 with Elasticsearch 8.x - Requires: pdphilip/elasticsearch ^5 - Docs: https://elasticlens.pdphilip.com - GitHub: https://github.com/pdphilip/elasticlens - Last updated: 2026-04-06 > ElasticLens uses the Laravel-Elasticsearch package (https://elasticsearch.pdphilip.com) as its query engine. All Elasticsearch query methods (search, geo, nested, aggregations, highlighting) are available through `viaIndex()`. ## Introduction - [Overview](https://elasticlens.pdphilip.com/): Starts like Scout. Ends like Elasticsearch. Because it is Elasticsearch. - [Getting Started](https://elasticlens.pdphilip.com/getting-started/): Install ElasticLens and connect your first model to Elasticsearch in under a minute. - [What's New in V4](https://elasticlens.pdphilip.com/whats-new/): Cleaner search API, conditional indexing, and soft delete support. - [Upgrading from V3](https://elasticlens.pdphilip.com/upgrade-guide/): One breaking change. A few new features. Five minutes. ## Index Model - [Indexing your Base-Model](https://elasticlens.pdphilip.com/index-model/): Add the Indexable trait, create an index model, and you're searching. - [Field Mapping](https://elasticlens.pdphilip.com/field-mapping/): Define exactly what gets indexed and how your relationships get embedded. - [Index Migrations](https://elasticlens.pdphilip.com/index-model-migrations/): Take control of your index structure with migrationMap(). ## Guides - [Embedded Relations](https://elasticlens.pdphilip.com/embedded-relations/): Flatten your relational data into Elasticsearch and search across everything at once. ## Search - [Full-text Search](https://elasticlens.pdphilip.com/full-text-search/): Every Elasticsearch query method. On your Laravel models. ## Configuration - [Model Observers](https://elasticlens.pdphilip.com/model-observers/): Auto-sync is on by default. Here's how to configure the observer chain. - [Conditional Indexing](https://elasticlens.pdphilip.com/conditional-indexing/): Control which records get indexed with a single method on your base model. - [Soft Delete Support](https://elasticlens.pdphilip.com/soft-deletes/): Configure how ElasticLens handles soft-deleted models. ## CLI & State - [Artisan CLI Tools](https://elasticlens.pdphilip.com/artisan-cli-tools/): Status, health, build, migrate, and make commands for managing your indexes. - [Build & Migration States](https://elasticlens.pdphilip.com/build-migration-states/): Built-in Elasticsearch models for tracking build and migration state. ## Related - [Laravel-Elasticsearch Docs](https://elasticsearch.pdphilip.com): Full Elasticsearch query builder reference. All query methods are available through ElasticLens `viaIndex()`.