Setting Up a Basic Node.js Application with MongoDB
Setting Up a Basic Node.js Application with MongoDB
Introduction
In this guide, we'll walk you through the process of setting up a basic Node.js application that interacts with a MongoDB database. You'll learn how to connect to MongoDB, perform CRUD (Create, Read, Update, Delete) operations, and build a simple RESTful API. We'll provide code examples to help you get started.
Prerequisites
Before you begin, make sure you have the following prerequisites:
- Node.js installed on your system. You can download it from nodejs.org.
- MongoDB installed and running locally or accessible through a connection string.
- A code editor or integrated development environment (IDE) for writing and running Node.js applications.
Step 1: Setting Up Your Node.js Project
Start by creating a new directory for your Node.js project. Open your terminal and run the following commands:
mkdir my-node-mongodb-app cd my-node-mongodb-app npm init -y
This will create a new Node.js project with a
package.json file. Step 2: Installing Dependencies
Next, install the required Node.js packages for MongoDB integration. Run the following command:
npm install mongodb express
This installs the
mongodb driver for MongoDB and express for building the API. Step 3: Creating a Connection to MongoDB
Now, you need to create a connection to your MongoDB database. In your Node.js application, create a file (e.g.,
app.js) and add the following code: const express = require('express'); const { MongoClient } = require('mongodb'); const app = express(); const port = 3000; const url = 'mongodb://localhost:27017'; // MongoDB connection URL const dbName = 'mydb'; // Your database name const client = new MongoClient(url, { useUnifiedTopology: true }); client.connect() .then(() => { console.log('Connected to MongoDB'); }) .catch((err) => { console.error('Error connecting to MongoDB:', err); }); app.listen(port, () => { console.log(`Server is running on port ${port}`); });
Step 4: Building Your API
You can start building your API by defining routes and handling CRUD operations. Here's an example of creating a simple `GET` endpoint to retrieve data from MongoDB:
app.get('/data', (req, res) => { const db = client.db(dbName); const collection = db.collection('mycollection'); // Replace with your collection name collection.find({}).toArray((err, result) => { if (err) { console.error('Error fetching data:', err); res.status(500).send('Error fetching data'); } else { res.json(result); } }); });
Step 5: Running Your Application
To run your Node.js application, use the following command:
node app.js
Your server will start, and you can access your API at
http://localhost:3000/data. Conclusion
You've successfully set up a basic Node.js application with MongoDB integration. You can expand and enhance this application to perform more advanced CRUD operations, add authentication, and create a full-fledged API.