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

# App review and publication

> Submit one immutable local artifact and understand each review state.

An uploaded revision contains the app source and exact 64×32 WebP produced by the CLI on the developer's system. Reviewers evaluate those two files as one decision.

## Review states

| State             | Meaning                                                                         |
| ----------------- | ------------------------------------------------------------------------------- |
| Ready for review  | The revision exists but has not been submitted                                  |
| In review         | A reviewer is evaluating the immutable revision                                 |
| Changes requested | The submission is closed; create and push a new revision                        |
| Approved          | The revision passed developer review; catalog and release gates may still apply |

## Submit

```sh theme={null}
niblet apps submit <REVISION_ID>
```

You can also submit the same revision from the developer dashboard or through the MCP `app_submit_for_review` tool.

## What reviewers check

* the app renders successfully within runtime budgets;
* metadata matches the app's behavior;
* schema fields have usable defaults and safe validation;
* network destinations and refresh rates are justified;
* credentials and personal data are handled through protected fields;
* assets, data, fonts, and brand material have usable rights and attribution;
* the frame is readable and animation is safe on a physical display; and
* failure states remain useful without misleading the user.

Approval is not a way around catalog policy, provider terms, security review, or physical-device validation.
