A deprecated MongoDB driver for Elixir, replaced by mongodb_driver.
MongoDB is a deprecated Elixir driver for MongoDB, enabling Elixir applications to interact with MongoDB databases through a native interface. It provides features like connection pooling, streaming cursors, and support for replica sets and transactions. The project has been superseded by mongodb_driver, and users are advised to migrate.
Elixir developers who need to interact with MongoDB databases in their applications, particularly those maintaining legacy systems using this driver.
It offers a reliable, specification-compliant driver with Elixir-friendly APIs, though its main advantage now is facilitating migration to the newer mongodb_driver for continued support and updates.
MongoDB driver for Elixir
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Follows the official MongoDB driver specification set by 10gen, ensuring reliable compatibility with MongoDB versions from 3.4 to 5.0, as stated in the features list.
Integrates with Elixir's functional paradigms through features like streaming cursors for large datasets and connection pooling via db_connection, optimizing resource management.
Supports the Mongo.Encoder protocol, allowing developers to define custom struct encoding for tailored data representation in MongoDB documents, as demonstrated in the README examples.
Includes support for advanced operations like replica sets, transactions, sessions, and aggregation pipelines, covering essential MongoDB functionalities for complex applications.
Explicitly marked as deprecated with no future updates, making it unsuitable for new projects and risky for existing ones due to lack of support and potential security issues.
The 1.0.0 release introduced a breaking change in find_one_and_replace/5 and find_one_and_update/5, requiring code adjustments and increasing migration complexity.
SSL tests require manual MongoDB server configuration with specific ciphers and certificates, adding complexity to the development and testing workflow, as noted in the contributing section.