A MongoDB-based Eloquent model and Query builder for Laravel, extending the original Laravel API.
Laravel MongoDB is a Laravel package that provides a MongoDB-based Eloquent model and Query Builder, allowing developers to use MongoDB as their database while retaining Laravel's Eloquent ORM syntax and features. It solves the problem of integrating MongoDB into Laravel applications without needing to learn a new API or rewrite existing database logic.
Laravel developers who want to use MongoDB as their database backend while maintaining the familiar Eloquent ORM and Query Builder workflows.
Developers choose Laravel MongoDB because it offers seamless integration with Laravel's existing API, eliminating the need to learn a new query syntax or rewrite application code when switching to MongoDB. Its compatibility with Laravel's authentication, migrations, and schema operations provides a full-featured MongoDB experience within the Laravel ecosystem.
A MongoDB based Eloquent model and Query builder for Laravel (Moloquent)
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Extends Laravel's core classes, allowing use of identical Eloquent methods with MongoDB, as stated in the README for a consistent developer experience.
Enables complex queries and aggregations using Laravel's fluent syntax, maintaining API compatibility without learning a new query language.
Supports Laravel's schema builder and migrations for managing MongoDB collections and indexes, facilitating database operations within Laravel's workflow.
Works with Laravel's authentication system out-of-the-box, allowing MongoDB storage for user data without modifying auth logic.
Some advanced MongoDB features may require raw queries, as the Eloquent abstraction can obscure native capabilities like geospatial indexes or change streams.
The abstraction layer introduces overhead compared to direct MongoDB driver usage, potentially affecting high-throughput applications that demand raw speed.
Compatibility is tied to specific Laravel versions, requiring careful upgrades and referencing old package versions, as noted in the README for older Laravel support.