> For the complete documentation index, see [llms.txt](https://burkeholland.gitbook.io/vs-code-can-do-that/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://burkeholland.gitbook.io/vs-code-can-do-that/master.md).

# VS Code Can Do That Workshop

## Prerequisites

These are important. You need to have these items installed to complete this workshop:

* [Git](https://git-scm.com/downloads)
* [Node(LTS)](https://nodejs.org/en/)
* [Docker Community Edition](https://docs.docker.com/install/)
* [VS Code Can Do That extension pack](https://marketplace.visualstudio.com/items?itemName=burkeholland.vs-code-can-do-that)

## Exercises

Clone the Github repo...

```
git clone https://github.com/burkeholland/workshop-vs-code-can-do-that
```

In the cloned repo there is a folder for each section of the workshop. To begin an exercise, open it in VS Code.

```
cd exercise-1-customizing-the-editor
code .
```

{% hint style="info" %}
Note that the "code" command from your command prompt or terminal only works if VS Code is added to your path. You will be prompted to do this when VS Code is installed. If you need to do it later, you can open the Command Palette (**Cmd/Ctrl + Shift + P**) and select "Shell Command: Install 'code' command in path".

If you are on Windows, you may need to reboot after this.
{% endhint %}

Some of the exercises contain multiple workspaces. This allows you to load multiple projects at the same time into VS Code. If this is the case, VS Code will prompt you. Select "Yes" to open the workspace file.

![](/files/-LlwLPxqv_zs-Wy_G4-M)

There will be a "start" project and a "solution" project in the workspace. Work in the "start" project and refer to the "solution" project for the finished exercise should you get stuck.

![](/files/-Lm7V0kuPK_EmrkryxuE)

All projects can be run and viewed in the browser by executing the `npm start` command. Open a terminal instance in VS Code with **Cmd/Ctrl + \`**. Make sure that you are in the right project ("start" or "solution") and run `npm start`

![](/files/-LlwNcgdQrFJjsRyi-lm)

This should start a server on port 3000 and open a browser tab. Any changes you make will automatically be reflected in the browser.&#x20;

{% hint style="info" %}
If the server starts on a different port, such as 3001 or 3002, this is because another process is currently running on port 3000. This is ok, but you may get confused during the exercises. It's a better idea to find the running process and kill it.

* Mac/Linux:&#x20;
  * `lsof -i tcp:3000`
  * Find the ID of the process
  * `kill <process id>`
* Windows
  * `netstat -ano | findstr :3000`
  * Find the ID of the process
  * `taskkill /PID typeyourPIDhere /F`

Note that for Windows, you must be running the Command Prompt as an Administrator.
{% endhint %}


---

# 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://burkeholland.gitbook.io/vs-code-can-do-that/master.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.
