---
metadata:
  - name: generator
    content: Diplodoc Platform v5.57.3
alternate:
  - https://sourcecraft.dev/portal/docs/en/sourcecraft/operations/project-work.md
  - https://sourcecraft.dev/portal/docs/ru/sourcecraft/operations/project-work.md
  - href: en/sourcecraft/operations/project-work.md
    type: text/markdown
    title: Markdown version
  - href: ../../llms.txt
    type: text/markdown
    title: llms.txt
title: How to work with projects in SourceCraft
description: How to create, update, and delete a project in SourceCraft, as well as combine related repositories in it.
---
> **Documentation Index:** Fetch the complete configuration index at https://sourcecraft.dev/portal/docs/en/llms.txt


# Working with projects in SourceCraft

<!-- source: en/_includes/sourcecraft/projects-intro.md -->
A _project_ consists of several [repositories](https://sourcecraft.dev/portal/docs/en/sourcecraft/concepts/index.md#repos) with one [organization](https://sourcecraft.dev/portal/docs/en/sourcecraft/concepts/index.md#org). You can use projects to logically separate repositories, e.g., by product or [command](https://sourcecraft.dev/portal/docs/en/sourcecraft/security/teams.md), and to assign roles for all the project's repositories at once and [manage](https://sourcecraft.dev/portal/docs/en/sourcecraft/security/index.md) access to them based on general rules.
<!-- endsource: en/_includes/sourcecraft/projects-intro.md -->

For more information, see [Projects](https://sourcecraft.dev/portal/docs/en/sourcecraft/concepts/index.md#projects).

## Creating a project {#create}

{% note info %}

To create a project, you need the [Project maintainer](https://sourcecraft.dev/portal/docs/en/sourcecraft/security/index.md#src-projects-maintainer) role or higher at the organization level.

{% endnote %}

1. Open the SourceCraft [home page](https://sourcecraft.dev).
1. On the ![image](../../_assets/console-icons/house.svg) **Home** tab, navigate to ![image](../../_assets/console-icons/briefcase.svg) **Organizations** and select an organization.
1. In the ![image](../../_assets/console-icons/layout-tabs.svg) **Your craftspace** section, navigate to ![image](../../_assets/console-icons/folders.svg) **Projects**.
1. In the top-right corner, click ![image](../../_assets/console-icons/plus.svg) **New project**.
1. In the window that opens:

    <!-- source: en/_includes/sourcecraft/projects-settings.md -->
    1. Enter a name for the project.
    1. Set an ID or leave the one generated automatically. The ID shows the path the project will be available at:

        ```
        https://sourcecraft.dev/<organization_slug>/projects/<project_ID>/repos
        ```

        The ID may contain lowercase Latin letters, digits, and hyphens.
    1. Optionally, add a description for the project.
    1. Set the project visibility:
        * **Public**: The [visibility](https://sourcecraft.dev/portal/docs/en/sourcecraft/concepts/index.md#repo-visibility) of public, internal, and private repositories added to the project does not change.
        * **Internal**: Public repositories added to the project become internal. The visibility of internal and private repositories added to the project does not change.
        * **Private**: Public and internal repositories added to the project become private. The visibility of private repositories added to the project does not change.

        {% note info %}

        When a repository is moved to another project, its visibility changes according to the project settings.

        When a repository is removed from a project, its visibility changes according to the settings of the repository itself.

        {% endnote %}
    <!-- endsource: en/_includes/sourcecraft/projects-settings.md -->

1. Click **Create project**.

## Updating a project {#change-project}

{% note info %}

To update a project, as well as add and remove repositories in it, you need the [Project maintainer](https://sourcecraft.dev/portal/docs/en/sourcecraft/security/index.md#src-projects-maintainer) role or higher at the project or organization level.

{% endnote %}

### Adding a repository to a project {#add-repository}

1. Open the SourceCraft [home page](https://sourcecraft.dev).
1. On the ![image](../../_assets/console-icons/house.svg) **Home** tab, navigate to ![image](../../_assets/console-icons/briefcase.svg) **Organizations** and select an organization.
1. In the ![image](../../_assets/console-icons/layout-tabs.svg) **Your craftspace** section, navigate to ![image](../../_assets/console-icons/folders.svg) **Projects**.
1. Click ![image](../../_assets/console-icons/plus.svg) to the right of the project to which you want to add a repository.
1. Select a repository.

    <!-- source: en/_includes/sourcecraft/projects-repo-shift.md -->
    {% note warning %}

    A repository can only belong to one project.

    When moving it to another project, users may lose access to the repository. This will happen if they do not have the required [roles](https://sourcecraft.dev/portal/docs/en/sourcecraft/security/index.md#src-roles) at the [organization](https://sourcecraft.dev/portal/docs/en/sourcecraft/concepts/index.md#org), [team](https://sourcecraft.dev/portal/docs/en/sourcecraft/security/teams.md), or repository level.

    {% endnote %}
    <!-- endsource: en/_includes/sourcecraft/projects-repo-shift.md -->

### Removing a repository from a project {#remove-repository}

1. Open the SourceCraft [home page](https://sourcecraft.dev).
1. On the ![image](../../_assets/console-icons/house.svg) **Home** tab, navigate to ![image](../../_assets/console-icons/briefcase.svg) **Organizations** and select an organization.
1. In the ![image](../../_assets/console-icons/layout-tabs.svg) **Your craftspace** section, navigate to ![image](../../_assets/console-icons/folders.svg) **Projects** and select your project.
1. Under ![image](../../_assets/console-icons/archive.svg) **Repositories**, click ![image](../../_assets/console-icons/ellipsis.svg) next to the project and select ![image](../../_assets/console-icons/trash-bin.svg) **Remove from project**.
1. Confirm the deletion.

The repository will only be removed from the project but will remain in the organization.

{% note warning %}

When removing it from the project, users may lose access to the repository. This will happen if they do not have the required [roles](https://sourcecraft.dev/portal/docs/en/sourcecraft/security/index.md#src-roles) at the [organization](https://sourcecraft.dev/portal/docs/en/sourcecraft/concepts/index.md#org), [team](https://sourcecraft.dev/portal/docs/en/sourcecraft/security/teams.md), or repository level.

{% endnote %}

### Updating settings {#settings}

1. Open the SourceCraft [home page](https://sourcecraft.dev).
1. On the ![image](../../_assets/console-icons/house.svg) **Home** tab, navigate to ![image](../../_assets/console-icons/briefcase.svg) **Organizations** and select an organization.
1. In the ![image](../../_assets/console-icons/layout-tabs.svg) **Your craftspace** section, navigate to ![image](../../_assets/console-icons/folders.svg) **Projects**.
1. To the right of your project, click ![image](../../_assets/console-icons/sliders.svg).
1. Under ![image](../../_assets/console-icons/gear.svg) **Settings**:

    <!-- source: en/_includes/sourcecraft/projects-settings.md -->
    1. Enter a name for the project.
    1. Set an ID or leave the one generated automatically. The ID shows the path the project will be available at:

        ```
        https://sourcecraft.dev/<organization_slug>/projects/<project_ID>/repos
        ```

        The ID may contain lowercase Latin letters, digits, and hyphens.
    1. Optionally, add a description for the project.
    1. Set the project visibility:
        * **Public**: The [visibility](https://sourcecraft.dev/portal/docs/en/sourcecraft/concepts/index.md#repo-visibility) of public, internal, and private repositories added to the project does not change.
        * **Internal**: Public repositories added to the project become internal. The visibility of internal and private repositories added to the project does not change.
        * **Private**: Public and internal repositories added to the project become private. The visibility of private repositories added to the project does not change.

        {% note info %}

        When a repository is moved to another project, its visibility changes according to the project settings.

        When a repository is removed from a project, its visibility changes according to the settings of the repository itself.

        {% endnote %}
    <!-- endsource: en/_includes/sourcecraft/projects-settings.md -->

1. Click **Update settings**.

## Deleting a project {#delete-project}

{% note info %}

To delete a project, you need the [Project admin](https://sourcecraft.dev/portal/docs/en/sourcecraft/security/index.md#src-projects-admin) role or higher at the project or organization level.

{% endnote %}

1. Open the SourceCraft [home page](https://sourcecraft.dev).
1. On the ![image](../../_assets/console-icons/house.svg) **Home** tab, navigate to ![image](../../_assets/console-icons/briefcase.svg) **Organizations** and select an organization.
1. In the ![image](../../_assets/console-icons/layout-tabs.svg) **Your craftspace** section, navigate to ![image](../../_assets/console-icons/folders.svg) **Projects**.
1. To the right of your project, click ![image](../../_assets/console-icons/sliders.svg).
1. In ![image](../../_assets/console-icons/gear.svg) **Settings**, under **Danger zone**, click **Delete Project**.
1. Enter the ID and confirm deletion.

{% note alert %}

Deleting a project is irreversible. Repositories that were part of the project will remain in the organization but will be detached from the project. Users may lose access to the repositories. This will happen if they do not have the required [roles](https://sourcecraft.dev/portal/docs/en/sourcecraft/security/index.md#src-roles) at the [organization](https://sourcecraft.dev/portal/docs/en/sourcecraft/concepts/index.md#org), [team](https://sourcecraft.dev/portal/docs/en/sourcecraft/security/teams.md), or repository level.

{% endnote %}

#### Useful links {#see-also}

* [Projects](https://sourcecraft.dev/portal/docs/en/sourcecraft/concepts/index.md#projects)
* [Managing user roles in a SourceCraft project](https://sourcecraft.dev/portal/docs/en/sourcecraft/operations/project-members.md)
* [Access management in SourceCraft](https://sourcecraft.dev/portal/docs/en/sourcecraft/security/index.md)
