# Publish Your Wallpaper

In this tutorial, you'll build your wallpaper into a distributable package and publish it to the Fluxlay store.

## Prerequisites

- Complete a previous tutorial to have a working wallpaper project.
- A [Fluxlay account](/sign-up) with onboarding completed.

## Log In

Authenticate with your Fluxlay account:

<PackageManagerCommand type="exec" command="fluxlay login" />

A browser window opens for sign-in. Once approved, your session is saved locally.

Verify you're logged in:

<PackageManagerCommand type="exec" command="fluxlay whoami" />

## Build Locally

To test the build without publishing:

<PackageManagerCommand type="exec" command="fluxlay build" />

This produces a `wallpaper.fluxlay` file — an encrypted, self-contained package. You can specify a custom output name:

<PackageManagerCommand type="exec" command="fluxlay build -o my-wallpaper.fluxlay" />

## Publish to the Store

When you're ready to share:

<PackageManagerCommand type="exec" command="fluxlay publish" />

This command:

1. Validates your `fluxlay.yaml` (the `kind` field is required)
2. Builds the bundle based on `kind` (Vite build for `web`; single-file packaging for `video` / `image` using `source`)
3. Encrypts and packages the content
4. Uploads to the Fluxlay store
5. Registers the version

After publishing, your wallpaper will be available on the [gallery](/gallery) and can be installed by any Fluxlay user.

## Update Metadata

After publishing, you can update the wallpaper's metadata (name, description, tags, preview images) from the [dashboard](/dashboard/wallpapers).

## Next Steps

Post-publish:

- [Update Metadata](/en/studio/developer/how-to/publishing/update-metadata.md) — Add preview images and tags.
- [Build a Wallpaper](/en/studio/developer/how-to/publishing/build.md) — Build options in depth.
- [Publish a Wallpaper](/en/studio/developer/how-to/publishing/publish.md) — `publish` command options.

Reference:

- [CLI Commands](/en/studio/developer/reference/cli/commands.md) — All available CLI commands.
- [Manifest (fluxlay.yaml)](/en/studio/developer/reference/cli/manifest.md) — Every manifest option.
