# Publishing ScandiPWA

## Release note sample

When describing the release notes, we suggest using the following template:

{% tabs %}
{% tab title="Detailed (major / minor)" %}

```
# What's inside

- Feature 1
- Feature 2

## Feature break-down

### Feature 1

Description of feature 1.

### Feature 2

Description of feature 2.

## Dependency check

### NPM dependencies:

- `some/package`: from `^x.x.x` to `^x.x.x`

### Composer dependencies

- `some/package`: from `^x.x.x` to `^x.x.x`
```

{% endtab %}

{% tab title="Patch" %}

```
# What's inside

- Feature 1
- Feature 2

That's all there is to it :)
```

{% endtab %}
{% endtabs %}

## Publishing ScandiPWA

Because [ScandiPWA is a mono repository managed by Lerna](https://docs.scandipwa.com/about/repository-structure#the-main-repository), you should publish it using Lerna commands.

{% tabs %}
{% tab title="Production" %}

```
lerna publish
```

{% endtab %}

{% tab title="Canary" %}

```
lerna publish --canary --exact --preid next --dist-tag=next minor
```

{% endtab %}
{% endtabs %}

This will create a new tag in the [ScandiPWA GitHub repository](https://github.com/scandipwa/scandipwa/releases). You can then go ahead and add some release notes to your release. The tag name will be in the format `@scandipwa/scandipwa/X.X.X`.

## Publishing Composer packages

We use [packagist.org](https://packagist.org/) to host published packages. Each composer package is contained in its own repository. To publish a package, you need to:

1. Go to the selected repository ([see the list of common ones](https://docs.scandipwa.com/about/repository-structure#the-composer-packages))
2. Go to releases sections – `/releases`
3. Click "Draft new release"
4. Enter the title, describe the changes
5. Click "Publish release"

After that, the change will appear on [packagist.org](https://packagist.org/). You can search for the package name there.
