> For the complete documentation index, see [llms.txt](https://wiki.berkie.ee/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.berkie.ee/techops/getting-started-projects/web-demo-project.md).

# Web Demo Project

We have a Node.js app for you to get started in web dev! This is a continuously developed project and will be used for future web tutorials!&#x20;

What's important right now is that with Node.js installed, you're able to run the the project successfully and configure your tools to work with it (e.g. you can send HTTP requests via Postman/Insomnia through localhost to the Node.js server).&#x20;

See the project here:

{% embed url="<https://github.com/IEEEBerkeley/nodejs-demo>" %}

Once you've cloned the repository, this will be the general workflow:

1. check the `package.json` file
2. run `npm i` or `npm install` to install the required dependencies through npm.
3. run `npm run dev` or `node <filename>.js` to execute a runtime to run the file.&#x20;
4. For this project specifically, visit `localhost:8080` and if you see the following screen, you've made it!&#x20;

### Concept Check Questions:

Do some of your own digging through the repository and answer the following questions:

1. What is the tool that manages node packages?
2. What command line command triggers this tool?
3. How do we install the required dependencies?
4. If we wanted to add dependencies to our project, where can we look?
5. Which file holds the dependencies?
6. Typically, to run a Node.js file, the command to start it is `node <file>.js`. What other commands can we run to start the server?
7. If we want to make more of these custom commands, where do we put it?
8. What does `nodemon` do? How is it used?

Next, please go to [Assignment 1: HTTP Requests](/techops/getting-started-projects/web-demo-project/assignment-1-http-requests.md) to complete the first assignment.


---

# 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://wiki.berkie.ee/techops/getting-started-projects/web-demo-project.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.
