{"id":23821350,"url":"https://github.com/returnstring/mongoplyr","last_synced_at":"2026-05-14T13:31:18.569Z","repository":{"id":147346288,"uuid":"99385908","full_name":"returnString/mongoplyr","owner":"returnString","description":"Native R interface to the MongoDB aggregation pipeline","archived":false,"fork":false,"pushed_at":"2017-09-29T07:51:58.000Z","size":31,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-02T08:40:12.550Z","etag":null,"topics":["data-engineering","data-science","mongodb","r"],"latest_commit_sha":null,"homepage":"","language":"R","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/returnString.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-08-04T23:14:24.000Z","updated_at":"2017-10-17T20:50:32.000Z","dependencies_parsed_at":"2023-07-07T06:31:10.922Z","dependency_job_id":null,"html_url":"https://github.com/returnString/mongoplyr","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/returnString%2Fmongoplyr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/returnString%2Fmongoplyr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/returnString%2Fmongoplyr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/returnString%2Fmongoplyr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/returnString","download_url":"https://codeload.github.com/returnString/mongoplyr/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240102413,"owners_count":19748009,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["data-engineering","data-science","mongodb","r"],"created_at":"2025-01-02T08:39:11.814Z","updated_at":"2026-05-10T06:30:21.046Z","avatar_url":"https://github.com/returnString.png","language":"R","funding_links":[],"categories":[],"sub_categories":[],"readme":"# mongoplyr\n\n[![Travis-CI Build Status](https://travis-ci.org/returnString/mongoplyr.svg?branch=master)](https://travis-ci.org/returnString/mongoplyr)\n[![Coverage Status](https://coveralls.io/repos/github/returnString/mongoplyr/badge.svg?branch=master)](https://coveralls.io/github/returnString/mongoplyr?branch=master)\n\nA native R interface to the MongoDB aggregation pipeline.\n\nInspired by the pipeline-esque syntax enjoyed when doing in-memory work with a combination of `dplyr` and `magrittr`, mongoplyr allows you to construct aggregation pipeline queries for MongoDB without the ugliness and insecurity of pasting strings together.\n\nIt uses [jeroen/mongolite](https://github.com/jeroen/mongolite) as a client library to actually communicate with MongoDB servers.\n\nIf you have a feature request, e.g. to prioritise an unimplemented portion of the aggregation pipeline, or a bug, please either file an issue on GitHub or poke me on [Twitter](https://twitter.com/returnString).\n\n# Example usage\n```r\nlibrary(mongoplyr)\n\n# using the MongoDB NY restaurant dataset\nconn \u003c- mongo(db = \"mydb\", collection = \"restaurants\")\n\nMongoPipeline() %\u003e%\n\tmmatch(.borough == \"Manhattan\") %\u003e%\n\tmgroup(by = .cuisine, count = .sum(1)) %\u003e%\n\tmsort(.count = -1) %\u003e%\n\tmlimit(5) %\u003e%\n\tmexecute(conn) -\u003e topFiveCuisinesInManhattan\n```\n\nShould result in a data frame like so:\n```\n                id  count\n1         American  3205\n2  Café/Coffee/Tea   680\n3          Italian   621\n4          Chinese   510\n5         Japanese   438\n```\n\n# Installation\nThe package is not yet available on CRAN. However, it can be installed directly from source with the `devtools` package:\n\n```r\ndevtools::install_github(\"returnString/mongoplyr\")\n```\n\nCurrently supported and tested R versions:\n- 3.4.x\n- 3.3.x\n\nThis package is also built and tested against the latest development build of R.\n\nWith regards to platforms, we officially test all changes on Linux with Travis CI, and most development currently occurs on Windows. I aim to implement automated testing on Windows and OSX to expand this.\n\n# Production usage\nThis package is currently in use at Deep Silver Dambuster Studios, primarily inside of Shiny dashboards for internal cluster telemetry, where we extract and prepare data for further analysis and presentation. This has caused a 99% reduction in our usage of `paste0` ;)\n\nThat said, due to the relative immaturity of this codebase, please exercise caution and verify your results independently from this package before committing to presenting data.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Freturnstring%2Fmongoplyr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Freturnstring%2Fmongoplyr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Freturnstring%2Fmongoplyr/lists"}