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

# Compose a post

> Write shared content, choose accounts and customize each delivery.

export const Screenshot = ({light, dark, alt, caption, width, height, sizes, portrait = false}) => <figure className={portrait ? "oss-doc-screenshot oss-doc-screenshot-portrait" : "oss-doc-screenshot"}>
    <div className="oss-product-light">
      <img src={light} alt={alt} width={width} height={height} sizes={sizes} loading="lazy" />
    </div>
    <div className="oss-product-dark">
      <img src={dark || light} alt={alt} width={width} height={height} sizes={sizes} loading="lazy" />
    </div>
    {caption ? <figcaption>{caption}</figcaption> : null}
  </figure>;

The editor keeps shared text and media on the left and account selection, account-specific text and live preview on the right. On mobile, these sections stack. Publishing controls stay at the top.

## Shared and account-specific text

Write the master text, then open **Choose Accounts**. Search accounts and select them using the row or checkbox. Selected accounts appear as avatars with their provider logo. The avatar strip scrolls horizontally when it cannot fit every account.

Click an avatar to edit that account's text. Without an override, the account follows the master text. The character counter uses the selected provider's limit. Previews stop at that limit; the original text remains available for editing. An error badge identifies an account that cannot currently publish.

## Media and previews

Choose **Add media** to upload supported [images or videos](/media). Reorder uploaded files using their drag handle or keyboard controls. The first files in that order take priority when a provider accepts fewer files. Preview images stay compact; a single image preserves its proportions rather than filling the card width. Video previews have native playback controls and do not autoplay.

Previews show content and supported media, but they do not replace provider validation. Providers may reject a request because of account access, quota or policy.

## Publishing controls

**Save as draft** accepts incomplete content and provider errors. **Post now** opens a confirmation modal. **Schedule** opens a date and time modal. Publishing controls remain disabled until the selected accounts and content are valid and uploads are ready.

When editing a scheduled post, **Save changes** preserves the current time; **Save & Update Schedule** changes it. A stale edit conflicts rather than overwriting another person's work. Leaving with unsaved edits opens a confirmation dialog.

## Compose a post

<Screenshot light="/assets/screenshots/composer-light.jpg" dark="/assets/screenshots/composer-dark.jpg" alt="Posted composer with sample master text, account selection, media and a provider preview." width={1280} height={900} />

## Mobile composer

<Screenshot light="/assets/screenshots/composer-mobile-light.jpg" dark="/assets/screenshots/composer-mobile-dark.jpg" alt="Posted composer account selection and live preview on mobile." width={390} height={844} portrait />


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.