Connecting next js to mongodb using node driver

How do you connect next js application to mongodb? I have followed the docs in setting up, but when i try to getseversideprops it says “Your getServerSideProps function did not return an object. Did you forget to add a return?” would really appreciate if someone could go over the steps with me. Thank you!

@Matthew_Sheppard To connect a Next.js application to MongoDB, you can follow these steps:

  1. Install the MongoDB driver for Node.js using the npm package manager:
npm install mongodb
  1. Create a new file for connecting to the database, for example db.js. In this file, you can use the MongoClient class to create a new client and connect to the MongoDB server:
import { MongoClient } from 'mongodb'
const uri = 'mongodb+srv://<username>:<password>@<cluster>.mongodb.net/<database>?retryWrites=true&w=majority'
const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true })
export default async function connectToDatabase() {
  if (!client.isConnected()) await client.connect()
  return client.db('mydatabase')
}

Replace <username>, <password>, <cluster>, and <database> with your own values. You can find these values in the MongoDB Atlas dashboard.
3. In your Next.js pages, you can import the connectToDatabase function from db.js to connect to the database and retrieve data from it:

import connectToDatabase from '../db'
export async function getServerSideProps(context) {
  const db = await connectToDatabase()
  const data = await db.collection('mycollection').find({}).toArray()
  return {
    props: {
      data: JSON.parse(JSON.stringify(data))
    }
  }
}

This example retrieves all documents from the mycollection collection and returns them as a JSON object in the props of the page. Note that you need to use the JSON.stringify and JSON.parse functions to convert the MongoDB objects to plain JavaScript objects.
4. If you encounter the error message “Your getServerSideProps function did not return an object. Did you forget to add a return?” it means that your getServerSideProps function is not returning anything. Make sure that you include a return statement with an object that contains the props you want to pass to the page.
I hope this helps!

Thank you for the response, i have implemented the steps and have this error

This is the code

I got rid of the if statement to check for other problems and i now have this