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

# scaffold

> Set up local backend project files for an existing Base44 app

Set up local development for the backend of an existing Base44 app. The command generates the configuration files your development environment needs to work with the app's backend resources. The frontend stays in Base44's visual editor. Unlike [`eject`](/developers/references/cli/commands/eject), which creates a new app and downloads your existing code including the frontend, scaffold works with your app in place.

For a step-by-step guide, see [Set Up Local Dev for an Existing App](/developers/backend/overview/set-up-local-dev-existing-app).

<Note>
  * If you don't have a Base44 app yet, use [`base44 create`](/developers/references/cli/commands/create) to create one from scratch.
  * If you want a different local development approach for an app you already have on Base44, consider these options instead:
    * [`base44 eject`](/developers/references/cli/commands/eject): download your app's code and start a new project from it.
    * [`base44 link`](/developers/references/cli/commands/link): link existing project files already on disk to a Base44 backend.
</Note>

## Usage

```bash theme={null}
base44 scaffold [name] --app-id <id>
```

## Arguments

| Argument | Description                                           | Required |
| -------- | ----------------------------------------------------- | -------- |
| `name`   | Project name. Defaults to the current directory name. | No       |

## Flags

| Flag            | Description                                                                                              |
| --------------- | -------------------------------------------------------------------------------------------------------- |
| `--app-id <id>` | The ID of the existing Base44 app to connect to. Falls back to the `BASE44_APP_ID` environment variable. |
| `--no-skills`   | Skip AI agent skills installation.                                                                       |

## Generated files

The command writes the following files to the current directory, skipping any that already exist:

| File                   | Description                                                                                |
| ---------------------- | ------------------------------------------------------------------------------------------ |
| `base44/config.jsonc`  | Project configuration: name, visibility, and optional site settings.                       |
| `base44/.app.jsonc`    | Links this directory to your Base44 app. Gitignored.                                       |
| `base44/.gitignore`    | Ignores generated files and secrets from version control.                                  |
| `.agents/`, `.claude/` | AI agent skills for working with Base44 in your IDE. Skipped when `--no-skills` is passed. |

## See also

* [`create`](/developers/references/cli/commands/create): Create a new Base44 project from a template.
* [`link`](/developers/references/cli/commands/link): Link a local project to a Base44 backend.
* [`eject`](/developers/references/cli/commands/eject): Clone an existing Base44 app into a separate local project.
* [Set Up Local Dev for an Existing App](/developers/backend/overview/set-up-local-dev-existing-app): Step-by-step guide for the scaffold workflow.
* [Project Structure](/developers/backend/overview/project-structure): How project files are organized.
