> For the complete documentation index, see [llms.txt](https://developer.harness.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.harness.io/open-source/use-harness-open-source/gitspaces/get-started/quickstart.md).

# Quickstart Guide

Create a Gitspace and develop a Node.js application.

Create a Gitspace for a **Node.js app**. Use it to write code, test changes, and publish changes to your remote repository.

### Before you begin <a href="#pre-requisite" id="pre-requisite"></a>

#### Installation <a href="#installation" id="installation"></a>

Gitspaces are available when you install **Harness Open Source**. Go to the [installation guide](/open-source/new-to-harness-open-source/quick-start.md) to install Harness Open Source.

### Sample application <a href="#sample-application" id="sample-application"></a>

Create a Gitspace for the sample application in the [Node.js demo repository](https://github.com/harness-community/demo-repo-nm). Fork the repository to make changes during this exercise.

#### Create a Gitspace <a href="#creating-a-gitspace" id="creating-a-gitspace"></a>

1. **Sign up** for or **Login** to Harness Open Source, and create a [new project](/open-source/new-to-harness-open-source/quick-start.md). You will see Gitspace available in the sidenav.

![](https://1570309421-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FwSg8m1jnnOJ6IG7TqFYn%2Fuploads%2Fgit-blob-ba506428933776e885066e2a7b6f107b44bdf8a6%2Floading-page-gitspace.png?alt=media)

2. Click on **"Get Started Now"**. To create a Gitspace using the sample app:
   * Choose the **Other Public Git Repositories** tab.
   * Repository URL is <https://github.com/harness-community/demo-repo-nm> (enter URL of your fork if you forked it). Make sure the URL exactly matches the clone URL for the repository since any extra characters can cause an error.
   * Leave the default branch **main** selected.
   * Select the IDE and click on **Create Gitspace**. For this Quickstart, choose **VS Code Browser**, which will open up the Gitspace in a new browser tab
3. After clicking on **Create Gitspace**, you’ll be redirected to the **Gitspace Details** page, where you can view the events and logs as the Gitspace is being created. Once it is ready, you can open the Gitspace by clicking the **Open VS Code Online** button at the top right of the page.
4. In the new browser tab, click on **"Yes, I trust the authors"** and **"Mark Done"** to get started. You can then start coding in the IDE as you normally would.

#### Developing in Gitspace <a href="#developing-in-gitspace" id="developing-in-gitspace"></a>

Now, let’s install dependencies for the sample app and run it. We will also make changes to it and commit back to the fork.

**Run sample app**

1. Open a new terminal. ![](https://1570309421-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FwSg8m1jnnOJ6IG7TqFYn%2Fuploads%2Fgit-blob-1f22242ef95a37232fc28a8dcc9415a001e00d5e%2Fopen-terminal.png?alt=media)
2. All dependencies, packages, tools and libraries needed for this application were installed while provisioning the Gitspace based on the config in [devcontainer.json](https://github.com/harness-community/demo-repo-nm/blob/main/.devcontainer/devcontainer.json). To run the sample app, run the following command in the terminal:

   ```bash
      npm run dev
   ```

   Your application will be available at proxy host 3000. You will see a message at the bottom right of your IDE with a link to open the app in browser. ![](https://1570309421-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FwSg8m1jnnOJ6IG7TqFYn%2Fuploads%2Fgit-blob-9025560482e580f93f9935ca80e14e70e783abff%2Fsample-app-port-info.png?alt=media)

The application shows the Harness canary in a variety of fun situations and poses.

**Making changes to sample app**

To make changes to the application, you should have forked it first and then created a Gitspace for the fork.

Steps to make changes and commit to source control:

1. You can make some changes to `haikus.json` such as delete one of the canary sections below. Save the file.

```
    { 
      "text": "traffic in bangalore,\ncondiser fying to work",        
      "image": "canary-flying.png"            
    },
```

2. In the Terminal, configure your GitHub credentials
   * `git config --global user.email "you@example.com"`
   * `git config --global user.name "Your Name"`
3. Now that you've made a few changes, you can use the integrated terminal or the source view to commit your work. We will use the **Source Control** view for this example. ![](https://1570309421-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FwSg8m1jnnOJ6IG7TqFYn%2Fuploads%2Fgit-blob-939bd42c56023210516ab0b5d6b237d9fd529a94%2Fgitspace-changes.png?alt=media)
4. To stage your changes, click `+` next to the `haikus.json` file, or next to **Changes** if you've changed multiple files and you want to stage them all.
5. To commit your staged changes, type a commit message describing the change you've made, then click **Commit**.
6. Now **Sync Changes**, it will redirect you to login and authorize to your GitHub. After authorization, your changes will be committed to your fork.

You can now use Harness Open Source Gitspaces for development.

{% @harness-feedback/feedback %}
