# Step-by-Step Guide to Setting Up a Server in NodeJs

Creating a server in Node.js is a fundamental skill for any web developer. Node.js, known for its efficiency and scalability, allows developers to build fast and lightweight server-side applications using JavaScript.

In this article, we will walk you through the process of setting up a basic server in Node.js, covering essential concepts and providing step-by-step instructions to get you started.

Whether you're a beginner or looking to refresh your knowledge, this guide will help you understand the core principles of server creation in Node.js.

## How to Create a Server in NodeJs

**Step 1.** First, if you have installed the node js then you have to import the `node:http` in an variable.

```javascript
const node=require("node:http")
```

**Step 2.** Then you have to define the hostname where you web app will be live

```javascript
const node=require("node:http")
const hostname="127.0.0.1"
```

**Step 3**. Then you have to set the port where you want to set the for default

```javascript
const node=require("node:http")
const hostname="127.0.0.1"
const port=3000
```

**Step 4.** Now, You have to set the request and response parameters therefore you can create a variable and inside the node module that you have imported there's a function name `createServer` which take `request` and `response` argument.

```javascript
const node=require("node:http")
const hostname="127.0.0.1"
const port=3000
const creating_server=node.createServer((req,res)=>{
})
```

**Step 5.** After that, we have to set the status code, header and end.

```javascript
const node=require("node:http")
const hostname="127.0.0.1"
const port=3000
const creating_server=node.createServer((req,res)=>{
    res.statusCode=200;
    res.setHeader("content-type","html")
    res.end("<h1>Hello World</h1>")
})
```

**Step 6.** Now, we have to set which port is listening. therefore we will use listen method from the `node:http` module which we have imported.

```javascript
const node=require("node:http")
const hostname="127.0.0.1"
const port=3000
const creating_server=node.createServer((req,res)=>{
    res.statusCode=200;
    res.setHeader("content-type","html")
    res.end("<h1>Hello World</h1>")
})
creating_server.listen(port,hostname,()=>{
    console.log('I am running at', hostname);
    
})
```

**Step 7.** And Finally, when we run our application using node then our server will be live

## Conclusion

Creating a server in Node.js is a straightforward process that forms the backbone of many web applications. By following the steps outlined in this guide, you can set up a basic server, understand the core principles involved, and be well on your way to building more complex server-side applications.

Whether you're just starting out or brushing up on your skills, mastering these fundamentals will provide a solid foundation for your development journey. Happy coding!
