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

# Quickstart

> This quickstart guide will help you deploy your plugin or theme in just a few minutes.

Recreate the official WordPress experience for your own plugins and themes with one-click installs and built-in updates, all without writing a single line of code.

## Ready in 3 simple steps

There’s no library to install, no custom logic to write. All WordPress plugins and themes are compatible out of the box.

Just follow these three simple steps to start deploying your code to any WordPress site cleanly, and without effort.

<Steps>
  <Step title="Setup your organization">
    If you haven’t already, [create an account](https://dashboard.wp-content.io/signup) and configure your first organization.
    You can start with a free plan, no credit card required.

    An organization is your workspace. From there, you can manage your private plugins and themes, browse all published versions, invite collaborators, configure API keys, and define which domains are allowed to receive updates.
  </Step>

  <Step title="Prepare your plugin or theme">
    To enable updates from an external source, you need to add the Update URI header to your plugin or theme.

    <Tabs>
      <Tab title="Example for a plugin">
        For **plugins**, add it to the header of the main .php file:

        ```php my-plugin/my-plugin.php {6} theme={null}
        <?php
        /**
         * Plugin Name: My Plugin
         * Author: Your Name
         * Version: 1.0.0
         * Update URI: https://registry.wp-content.io
         */
        ```
      </Tab>

      <Tab title="Example for a theme">
        For **themes**, add it to the style.css file:

        ```css my-theme/style.css {5} theme={null}
        /*
        Theme Name: My Theme
        Author: Your Name
        Version: 1.0.0
        Update URI: https://registry.wp-content.io
        */
        ```
      </Tab>
    </Tabs>

    The Author, Version, and Update URI fields are required.
    Other headers like Description, Tags, or License are optional, but will be used to enrich the dashboard and update information.

    Once this is done, create a ZIP archive of your plugin or theme folder.
    You’ll upload it when creating your first release.
  </Step>

  <Step title="Install the External Repository plugin">
    To enable updates on your WordPress sites, install the External Repositories plugin.
    You can download it for free from [the official webpage](https://wp-content.io/external-repositories).

    Once installed and activated, you’ll be redirected to the plugin settings page.
    There, you can enter your API key to connect your site to your organization.

    When you create an organization, a readonly API key is automatically generated.
    You can use this key to allow update checks without exposing write access.
  </Step>
</Steps>

## You’re all set 🎉

Everything is ready, your site is now connected and can receive updates for your private plugins and themes.

You’ll also find a new tab when adding a plugin or a theme from the WordPress admin.
This view lets you browse the items linked to your account and install them in one click.

<Tabs>
  <Tab title="Install a new plugin">
    <img className="bordered wp" src="https://mintcdn.com/wp-contentio/u-bhHHTcSpzREhXw/images/explore-plugins.png?fit=max&auto=format&n=u-bhHHTcSpzREhXw&q=85&s=aa318f3eb5b6d826c353f1460084df85" width="2400" height="1600" data-path="images/explore-plugins.png" />
  </Tab>

  <Tab title="Install a new theme">
    <img className="bordered wp" src="https://mintcdn.com/wp-contentio/u-bhHHTcSpzREhXw/images/explore-themes.png?fit=max&auto=format&n=u-bhHHTcSpzREhXw&q=85&s=d3fd354e36317490ee62d54d4afd96ae" width="2400" height="1600" data-path="images/explore-themes.png" />
  </Tab>

  <Tab title="Repository settings">
    <img className="bordered wp" src="https://mintcdn.com/wp-contentio/u-bhHHTcSpzREhXw/images/external-repositories-settings.png?fit=max&auto=format&n=u-bhHHTcSpzREhXw&q=85&s=bd2f10cbc5aef4e5f32f016776d1b371" width="2400" height="1600" data-path="images/external-repositories-settings.png" />
  </Tab>
</Tabs>

When you publish a new version, it will appear directly in the WordPress admin, just like any plugin or theme from the official repository.

## Troubleshooting

If you’re not familiar with WordPress headers or run into errors during upload, check the detailed setup guides:

<CardGroup cols={2}>
  <Card title="Plugin setup guide" icon="plug" href="/guides/plugins">
    How to prepare your plugin for private updates
  </Card>

  <Card title="Theme setup guide" icon="brush" href="/guides/themes">
    How to prepare your theme for private updates
  </Card>
</CardGroup>
