Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/datanoise/mongo.cr
Crystal binding for MongoDB C Driver
https://github.com/datanoise/mongo.cr
Last synced: about 1 month ago
JSON representation
Crystal binding for MongoDB C Driver
- Host: GitHub
- URL: https://github.com/datanoise/mongo.cr
- Owner: datanoise
- License: mit
- Archived: true
- Created: 2015-05-09T05:54:22.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2021-08-17T22:17:30.000Z (almost 3 years ago)
- Last Synced: 2024-02-16T11:33:09.358Z (5 months ago)
- Language: Crystal
- Size: 105 KB
- Stars: 97
- Watchers: 7
- Forks: 35
- Open Issues: 22
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Lists
- awesome-crystal - mongo.cr - Crystal binding for MongoDB C Driver (Database Drivers)
- awesome-crystal - mongo.cr - Binding for MongoDB C driver (Database Drivers/Clients)
- awesome-crystal - mongo.cr - Binding for MongoDB C Driver (Database Drivers)
README
# mongo.cr
This library provides binding for MongoDB C Driver. The goal is to provide a driver to access MongoDB.
# Status
*Beta*
# Requirements
- Crystal language version 0.20 and higher.
- libmongoc version 1.1.0
- libbson verion 1.1.0On Mac OSX use `homebrew` to install the required libraries:
```
$ brew install mongo-c
```On Linux you need to install `libmongoc-1.1-0` and `libbson-1.1-0` from your package manager or from source:
```
wget https://github.com/mongodb/mongo-c-driver/releases/download/1.1.0/mongo-c-driver-1.1.0.tar.gz
tar -zxvf mongo-c-driver-1.1.0.tar.gz && cd mongo-c-driver-1.1.0/
./configure --prefix=/usr --libdir=/usr/lib64
make
sudo make install
```## Installation
Add this to your application's `shard.yml`:
```yaml
mongo:
github: datanoise/mongo.cr
branch: master
```# Usage
```crystal
require "mongo"client = Mongo::Client.new "mongodb://:@:/"
db = client["db_name"]collection = db["collection_name"]
collection.insert({ "name" => "James Bond", "age" => 37 })collection.find({ "age" => { "$gt" => 30 } }) do |doc|
puts typeof(doc) # => BSON
puts doc
end
```# License
MIT clause - see LICENSE for more details.