Skip to content

Fetch-based Mongo Client for the Edge (Including Cloudflare Workers, Vercel Edge Functions, Deno, etc), the Browser, or Node that is API Compatible with the official `mongodb` NodeJS driver

License

drivly/mongo-fetch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mongo Fetch Client - Data API driver

This client is a HTTP adapter for the Data API, allowing you to access data as if you were connecting to a MongoDB database directly. While it is not a full replacement for the MongoDB driver, it does provide a way to access MongoDB from a browser or edge-computing service like Cloudflare Workers.

Usage

import { MongoFetchClient } from 'mongo-fetch'

const client = new MongoFetchClient(
  'clusterName', // The cluster name in our self-hosted Data API, otherwise this is the dataSource.
  {
    url: 'https://data-api.example.com',
    apiKey: 'secret' // API key for authenticating with the API
  }
)

const documents = await client
  .db('database')
  .collection('collection')
  .find({ name: 'John' })
  .limit(2)
  .sort({ age: -1 })
  .project({ name: 1, age: 1 })
  .toArray()

Documentation

Since this driver is a close match for the MongoDB driver, you can use the official MongoDB documentation for reference. The only difference is that you will need to use the MongoFetchClient class instead of the MongoClient class. You can find the documentation here.

Heres a list of operations that are supported:

  • find
  • findOne
  • insertOne
  • insertMany
  • updateOne
  • updateMany
  • deleteOne
  • deleteMany
  • aggregate

Notice

This driver is not 100% compatible with the MongoDB driver. As of right now, this driver only supports basic CRUD, aggregation, and index operations. It does not support transactions, change streams, or other advanced features. As our self-hosted Data API grows, we will add further features to this driver.

About

Fetch-based Mongo Client for the Edge (Including Cloudflare Workers, Vercel Edge Functions, Deno, etc), the Browser, or Node that is API Compatible with the official `mongodb` NodeJS driver

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published