Skip to content
This repository has been archived by the owner on Jul 6, 2018. It is now read-only.

accounts-js/mongo

Folders and files

NameName
Last commit message
Last commit date
Jan 15, 2018
Mar 11, 2018
Mar 9, 2018
Mar 6, 2018
Mar 7, 2018
Mar 13, 2018
Feb 27, 2018
Sep 16, 2017
Mar 13, 2018

Repository files navigation

@accounts/mongo

MongoDB adaptor for accounts

npm Circle CI codecov MIT License

Note

This package is under active development.

Install

yarn add @accounts/mongo

Usage

import { AccountsServer } from '@accounts/server';
import { Mongo } from '@accounts/mongo';

// If you are using mongoose
mongoose.connect(process.env.MONGO_URL);
const db = mongoose.connection;

// If you are using mongodb 2.x
const db = await mongodb.MongoClient.connect(process.env.MONGO_URL);

// If you are using mongodb 3.x
const client = await mongodb.MongoClient.connect(process.env.MONGO_URL);
const db = client.db('my-db-name');

const accountsMongo = new Mongo(db, options);
const accountsServer = new AccountsServer({ db: accountsMongo });

The users will be saved under the users collection.

Options

Property Type Default Description
collectionName String users The users collection name.
sessionCollectionName String sessions The sessions collection name.
timestamps Object { createdAt: 'createdAt', updatedAt: 'updatedAt' } The timestamps for the users and sessions collection.
convertUserIdToMongoObjectId Boolean true Should the user collection use _id as string or ObjectId.
convertSessionIdToMongoObjectId Boolean true Should the session collection use _id as string or ObjectId.
caseSensitiveUserName Boolean true Perform case intensitive query for user name.
idProvider Function Function that generate the id for new objects.
dateProvider (date?: Date) => any (date?: Date) => (date ? date.getTime() : Date.now()) Function that generate the date for the timestamps.