Skip to content

Commit 04c0608

Browse files
jc-clarklecoursenfelicitymaymartinajirCopilot
authored
Add learner documentation for setting up a local development environment (#56019)
Co-authored-by: Laura Coursen <lecoursen@github.com> Co-authored-by: Felicity Chapman <felicitymay@github.com> Co-authored-by: Martina Jireckova <martinajir@github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Tadas Labudis <labudis@github.com> Co-authored-by: Ben Ahmady <32935794+subatoi@users.noreply.github.com> Co-authored-by: Steve-Glass <84886334+Steve-Glass@users.noreply.github.com> Co-authored-by: Sunbrye Ly <56200261+sunbrye@users.noreply.github.com> Co-authored-by: sunbrye <sunbrye@github.com> Co-authored-by: Sam Browning <106113886+sabrowning1@users.noreply.github.com>
1 parent 5b6194a commit 04c0608

File tree

2 files changed

+105
-0
lines changed

2 files changed

+105
-0
lines changed
Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
---
2+
title: Developing your project locally
3+
intro: 'Learn how to create a local development environment by working with an example client-side application built on HTML, CSS, and JavaScript.'
4+
versions:
5+
fpt: '*'
6+
shortTitle: Local development
7+
---
8+
9+
## Overview
10+
11+
Local development means setting up and **running your project on your own computer** instead of in the cloud or on a remote server. When you develop locally, you can work on your code without an internet connection and experiment without affecting the live application.
12+
13+
The steps required to configure a local development environment are different for each project, based on its programming languages, frameworks, tools, and dependencies. In this guide, you'll learn **core skills** needed to set up any project by working with an example client-side application built on HTML, CSS, and JavaScript. You can then apply those same skills to other projects in the future.
14+
15+
## Installing essential development tools
16+
17+
Before you can start, you'll need to install some essential tools that are widely used for local development.
18+
19+
1. [Set up {% data variables.product.prodname_vscode_shortname %} with {% data variables.product.prodname_copilot %}](https://code.visualstudio.com/docs/copilot/setup-simplified).
20+
1. [Install Git](https://git-scm.com/downloads).
21+
22+
## Cloning and opening the repository in {% data variables.product.prodname_vscode_shortname %}
23+
24+
First, make a copy of the repository on your computer by cloning it.
25+
26+
1. [Start by cloning the new2code/client-side-web-application repository](vscode://vscode.git/clone?url=https://github.com/new2code/client-side-web-application). This link opens a dialog in {% data variables.product.prodname_vscode_shortname %} to clone the repository. <!-- markdownlint-disable-line GHD003 -->
27+
1. Choose a location to save the repository on your computer, then click **Select as Repository Destination**.
28+
1. When prompted, open the repository.
29+
30+
## Installing project requirements
31+
32+
1. [Open {% data variables.copilot.copilot_chat_short %}](vscode://GitHub.Copilot-Chat), then ask it to identify what you need to install with the following prompt. <!-- markdownlint-disable-line GHD003 -->
33+
34+
```text copy
35+
What do I need to install to develop this project locally?
36+
```
37+
38+
For this example, {% data variables.product.prodname_copilot_short %} will say that this project needs Node.js. Node.js allows you to run JavaScript code on your computer and provides tools for web development.
39+
40+
1. Ask {% data variables.product.prodname_copilot_short %} how to install the project requirements, then follow the steps to install them on your computer.
41+
42+
For this example, we could ask "How do I install Node.js?" {% data variables.product.prodname_copilot_short %} will provide instructions for visiting https://nodejs.org/ and downloading the installer.
43+
44+
## Installing project dependencies
45+
46+
Now that you have the required software installed, you need to understand how to use it for this specific project.
47+
48+
**Check the README file first**. Most projects include a README file in the root directory that explains how to set up and run the project. For this project, both the README file and asking {% data variables.product.prodname_copilot_short %} will tell you that the next step is to install the project's dependencies using npm, the Node.js package manager.
49+
50+
1. Open the Command Palette by pressing <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>P</kbd> (Windows/Linux) or <kbd>Cmd</kbd>+<kbd>Shift</kbd>+<kbd>P</kbd> (Mac).
51+
52+
1. Type `Terminal: Create New Terminal` and press <kbd>Enter</kbd>.
53+
54+
1. In the terminal tab, paste the following command.
55+
56+
```bash copy
57+
npm install
58+
```
59+
60+
Because this project uses Node.js, we used `npm install` to read the `package.json` file and download all the dependencies the project needs to work properly. Other types of projects will use different commands. For example, Python projects might use `pip install -r requirements.txt`, and Ruby projects might use `bundle install`.
61+
62+
If the README doesn't include information about installing dependencies, you can:
63+
64+
* **Look for configuration files**: Different projects use different files to list their dependencies—for example, Node.js projects use `package.json`, Python projects use `requirements.txt`, and Ruby projects use `Gemfile`.
65+
* **Ask {% data variables.product.prodname_copilot_short %}**: Try a prompt like, "Now that I have Node.js installed, what's the next step to set up this project?"
66+
67+
## Running and developing your project
68+
69+
Now that your development environment is set up, you can start the development server and use it to preview changes to your code.
70+
71+
1. Find out how to start the project by checking the README file in your project folder.
72+
73+
For this example, the "Steps for running locally" section of the README explains that you can start the development server with the `npm start` command. Enter the following command in your terminal.
74+
75+
```bash copy
76+
npm start
77+
```
78+
79+
1. To identify where the local server is available, review the terminal output. You'll see that the local server is available on http://localhost:8080. Navigate to that address in your browser.
80+
1. Make a small change to the code, such as editing some text in the HTML file or changing a color in the CSS file. Save your changes.
81+
1. Check the project documentation or terminal output to understand how to see your changes. Some projects automatically refresh after you save the changes, while others require refreshing your browser window.
82+
83+
For this project, refresh your browser window to see your changes.
84+
85+
If the README doesn't contain the information you need, check the configuration files for available commands. You can also ask [{% data variables.copilot.copilot_chat_short %}](vscode://GitHub.Copilot-Chat) with the following prompt. <!-- markdownlint-disable-line GHD003 -->
86+
87+
```text copy
88+
How do I start this project locally?
89+
```
90+
91+
## What's next?
92+
93+
Now that you've successfully set up your first local development environment, it's time to apply these skills to different types of projects.
94+
95+
**Practice with a different project**: Try setting up another project with different requirements. For example, [@new2code's Python web application](https://github.com/new2code/python-web-application) uses Python and Flask instead of Node.js. <!-- markdownlint-disable-line GHD003 -->
96+
97+
Use what you learned in this tutorial to:
98+
99+
* Clone the repository using {% data variables.product.prodname_vscode_shortname %}
100+
* Ask {% data variables.product.prodname_copilot_short %} what tools and dependencies you need to install
101+
* Read the README file to understand how to run the project
102+
* Get the application running in your browser
103+
104+
This practice will help you recognize patterns across different technologies and build confidence in your ability to set up any project locally.

content/get-started/learning-to-code/index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ children:
88
- /finding-and-understanding-example-code
99
- /reusing-other-peoples-code-in-your-projects
1010
- /setting-up-copilot-for-learning-to-code
11+
- /developing-your-project-locally
1112
- /learning-to-debug-with-github-copilot
1213
- /storing-your-secrets-safely
1314
- /finding-and-fixing-your-first-code-vulnerability

0 commit comments

Comments
 (0)