varun-mongo

mongodb connection using for personal projects

Usage no npm install needed!

<script type="module">
  import varunMongo from 'https://cdn.skypack.dev/varun-mongo';
</script>

README

In index.js :

require("dotenv").config("./.env");

async function startServer() {
  const { connectToDatabase } = require("varun-mongo");
  await connectToDatabase("mongodb://localhost:27017", "database1");
  // if connection fails, this will throw error and app will not start
  await connectToDatabase("mongodb://localhost:27017", "database2");

  ...
  ...
  ...
  ...

  if (!module.parent) {
    app.listen(process.env.PORT || 3000);
    console.log("App is up and running on localhost:" + process.env.PORT || 3000);
  }
}

startServer();

In other files :


const {getConnection} = require("varun-mongo")

async function(){
  const db1 = getConnection("database1")
  const user = await db1.collection("users").findOne({});
  console.log(user);
}

Do not use like this :


const db1 = require("varun-mongo").getConnection("database1");

async function(){
  const user = await db1.collection("users").findOne({});
  console.log(user);
}

Connection URI

To connect :

mongo mongodb://<username>:<password>@127.0.0.1:27017/admin

For mongorestore :

mongorestore --uri mongodb://<username>:<password>@127.0.0.1:27017/admin --drop --db <database_name> ./

For mongodump :

mongodump --uri=mongodb://<username>:<password>@127.0.0.1:27017/<database_name>?authSource=admin

Note:

  1. admin is authentication database name.
  2. Replace 127.0.0.1 with server IP Address.
  3. 27017 is default mongodb port.