> ## Documentation Index
> Fetch the complete documentation index at: https://docs.truecourse.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Local folders

> In local mode, a folder on the machine can be connected as a repository. Runs always work on a copy.

When the server runs with `TRUECOURSE_MODE=local`, the server and you share a filesystem, so a folder on the machine can be connected as a repository. It appears as the **Local folder** provider. A hosted deployment has no machine of yours to point at, so it does not offer this.

## Connect a folder

Open **Code**, press **Connect repository**, and pick **Local folder**. Enter the folder's full path on this machine, then go through the Context step and press **Connect and start onboarding**.

The folder has to be:

* an absolute path, starting at the root;
* a folder that exists;
* a git repository. TrueCourse identifies what a run produced by the commit it ran on, so a folder without git is refused.

A folder that is already connected is refused as well. Each refusal says which of these it was.

The repository is named `local/<folder>`. Two folders with the same name get a counter, so they stay two repositories.

## Runs never touch your folder

Every run copies the folder into a directory of its own and works there. Your checkout is read, copied and left exactly as it was.

## Keeping its documentation fresh

A folder has no webhook. Its Repository [source](/guard/web-sources) re-reads in two cases: when you press **Sync now**, and when a file under the folder changes, which the server watches for.

## What a folder does not have

A folder has no account behind it and no branch the provider tracks. A run reads whatever is checked out, so the repository's Settings tab shows no default branch.

Local mode also has no sign-in and exactly one workspace, so there are no invitations. See [Installation](/installation#run-it-locally).

## Next steps

<CardGroup cols={2}>
  <Card title="Quickstart" icon="rocket" href="/quickstart">
    A local run from start to first results.
  </Card>

  <Card title="Repositories" icon="code-branch" href="/code">
    The list and the repository console.
  </Card>
</CardGroup>
