> For the complete documentation index, see [llms.txt](https://docs.ionicfirebaseapp.com/restaurantbackend/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ionicfirebaseapp.com/restaurantbackend/nodejs/requirements.md).

# NodeJS System Requirement

### Requirement for Node JS API <a href="#project-requirement" id="project-requirement"></a>

* First, make sure you have installed node.js 8.X and npm 6.X version. You can check it on own terminal window by merely entering node -v and npm - v. You can also download latest nodeJs from [here](http://nodejs.org/).
* Git and Python also need to be install.

```
$ npm -v
$ node -v
```

* MongoDB also need to install locally or better you can use [Mlab](http://mlab.com/).

You need to create a account or you have already account just login.

* Click on the Create New button. You need to select the free version and database location and provide a unique name and create a database.
* Once Database created, you need to create User for that Database. You can click on user Tab inside Mlab. You can enter any username, password to create a username and password for your Database.

![](https://blobscdn.gitbook.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LCi33CtRsTmHhJg9e9K%2F-LClwmrMSoHdXN7XBNHF%2F-LClwxt7xWI8xxn__7JV%2Fdb.png?alt=media\&token=2b71216d-17f2-47fb-b776-7eb1a1e4607d)

Once Database create you need to Copy MongoDB URI from Mlab,  It will looked like this :

**mongodb://\<dbuser>:\<dbpassword>@ds147985.mlab.com:47985/dname**

**\<dbuser> :** you replace this with username you added for this DB.

**\<dbpassword> :** replace it with database password:

***Ex :*** **Username:** demo and **Password:** 12345 then, your Mlab url will be like this

![MongoDB URL ](/files/-LCljo41QZXX8iZXDpUT)

* Navigate to Config > environment and replace the URL with your URI. You can also update the same in Production.ts file as well. If you like to set up a default database then seedbed: true or you can change it to false.
* Gulp also need to be install on your machine. You can run the below command:

```
$ npm install -g gulp
```

### Requirement for Dashboard <a href="#project-requirement" id="project-requirement"></a>

First make sure you have installed node.js 8.X and npm 5.X version. You can check it on own terminal window simply by entering node -v and npm -v . You can also download latest nodeJs from [here](https://nodejs.org/en/)​

```
$ npm -v 
$ node -v 
```

once node and npm install on your machine we need to install Ionic globally as well .

```
// You can install ionic globally on your machine npm install -g @angular/cli 
```

Once Angular CLI install successfully verify installation with this command

```
ng -v   // it will show you the version of angualr-cli on your machine.
```

You might receive some other git related Error or node-sass as well .

If you Get this error please check if [git](https://git-scm.com/) install on your machine and if you are window user git should in your path of machine .

If there any error related to [node-sass](https://github.com/sass/node-sass) you may follow there guide based on your machine OS and most case window user might face issue then you can install Python 2.X on your machine and it probably resolve your Error.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.ionicfirebaseapp.com/restaurantbackend/nodejs/requirements.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
