diff --git a/docs/capabilities/http-fetch.md b/docs/capabilities/http-fetch.md index 7082d2db..b6388dbb 100644 --- a/docs/capabilities/http-fetch.md +++ b/docs/capabilities/http-fetch.md @@ -24,7 +24,7 @@ devvit.json ### Requesting a domain to be allow-listed :::note -If you're porting a Data API app as part of our [App Migration Programs](https://www.reddit.com/r/Devvit/comments/1sgwkm7/bring_your_data_api_apps_to_devvit_and_details/) you may be eligible for special fetch domain exceptions. Please list at the top of your Devvit app's README.md file which Data API app you are migrating, and which domains you need access to. Our App Review team will provide exemptions for program participants +If you're porting a Data API app as part of our [App Migration Programs](https://www.reddit.com/r/Devvit/comments/1sgwkm7/bring_your_data_api_apps_to_devvit_and_details/) you may be eligible for special fetch domain exceptions. Please list at the top of your Devvit app's [`README.md`](../devvit_rules.md#app-readme-requirements) file which Data API app you are migrating, and which domains you need access to. Our App Review team will provide exemptions for program participants ::: Apps may request a domain to be added to the allow-list by specifying domains in the http configuration. This configuration is optional, and apps can still configure http: true as before. @@ -183,13 +183,13 @@ Requests to use any other AI provider will be denied. ### Documentation requirements -If your app uses fetch domains, you must add context to your app's README for the approval process: +If your app uses fetch domains, add this context to your app's [README](../devvit_rules.md#app-readme-requirements) for the approval process: -1. Create a "Fetch Domains" section in your README +1. Create a "Fetch Domains" section in your [README](../devvit_rules.md#app-readme-requirements) 2. List each domain you're requesting and explain why you need it 3. Ensure your usage complies with our fetch guidelines -Example README section: +Example Fetch Domains section: ``` diff --git a/docs/capabilities/server/http-fetch-policy.md b/docs/capabilities/server/http-fetch-policy.md index 2e1fd0bb..0f6557b4 100644 --- a/docs/capabilities/server/http-fetch-policy.md +++ b/docs/capabilities/server/http-fetch-policy.md @@ -32,13 +32,13 @@ Requests to use any other AI provider will be denied. ### Documentation requirements -If your app uses fetch domains, you must add context to your app's README for the approval process: +If your app uses fetch domains, add this context to your app's [README](../../devvit_rules.md#app-readme-requirements) for the approval process: -1. Create a "Fetch Domains" section in your README +1. Create a "Fetch Domains" section in your [README](../../devvit_rules.md#app-readme-requirements) 2. List each domain you're requesting and explain why you need it 3. Ensure your usage complies with our fetch guidelines -Example README section: +Example Fetch Domains section: ``` ## Fetch Domains @@ -107,4 +107,4 @@ The following domains are globally allowed and can be fetched by any app: - propublica.org - pbs.org - i.giphy.com -- chessboardjs.com \ No newline at end of file +- chessboardjs.com diff --git a/docs/devvit_rules.md b/docs/devvit_rules.md index 91e7667a..bd38d0c1 100644 --- a/docs/devvit_rules.md +++ b/docs/devvit_rules.md @@ -18,7 +18,17 @@ You can start the Reddit app review process by [publishing your app](./guides/la - Thoroughly playtesting your app, - Carefully reviewing these Devvit Rules and other Reddit Terms & Policies, and -- Providing a detailed app description. +- Providing a detailed app description and app README. + +### App README requirements + +Apps must include a descriptive `README.md` file in the root directory of the app project (for example, `project-directory/README.md`). Apps submitted with a missing, empty, default template README, or vague README will be rejected. + +Your README should be written in simple terms for a non-developer audience and include: + +- An app overview summary at the top (1000 words or fewer) explaining what the app does, who it is for, and critical operational notes +- Instructions on how to configure, deploy, and interact with the app's full feature set +- A changelog detailing what has changed in each new version submission As part of Reddit app review, we may review your code, read through your app’s description, test your app, and provide feedback. We may use third-party LLMs to help us conduct this review. When your app review is complete, we’ll notify you about your app’s status, which could be: diff --git a/docs/guides/faq.mdx b/docs/guides/faq.mdx index f7263807..f373a2a7 100644 --- a/docs/guides/faq.mdx +++ b/docs/guides/faq.mdx @@ -133,7 +133,7 @@ For command syntax, see [Devvit CLI](./tools/devvit_cli.mdx). For the review and
What should I do after playtest when I am ready to launch? -Before launch, make sure the app is stable across mobile and web, test with multiple accounts, and add an installer-friendly `README.md`. Then follow the publish flow in [Launch your app](./launch/launch-guide.md). +Before launch, make sure the app is stable across mobile and web, test with multiple accounts, and add the required app [`README.md`](../devvit_rules.md#app-readme-requirements). Then follow the publish flow in [Launch your app](./launch/launch-guide.md). If you're just ending a playtest session, remember that the latest playtest install remains in place until you change installs. [Playtest](./tools/playtest.md) and [`devvit install`](./tools/devvit_cli.mdx#devvit-install) cover that handoff. @@ -151,9 +151,9 @@ Most app versions are reviewed within **1–2 business days**. New apps or versi To keep review moving: -- Make sure your `README.md` is clear, accurate, and up to date. +- Make sure your app [`README.md`](../devvit_rules.md#app-readme-requirements) is clear, accurate, and up to date. - Ensure your app complies with the [Devvit Rules](../devvit_rules.md). -- If your app uses fetch domains, document them in a "Fetch Domains" section of your README. +- If your app uses fetch domains, document them in a "Fetch Domains" section of your [README](../devvit_rules.md#app-readme-requirements). If you haven't heard back after a week, reach out in the [Devvit Discord](https://developers.reddit.com/discord) or via [r/Devvit Modmail](https://www.reddit.com/message/compose/?to=r/Devvit). For the full publish flow, see [Launch your app](./launch/launch-guide.md). @@ -175,7 +175,7 @@ If the goal is broader distribution, follow [Launch your app](./launch/launch-gu Published apps are unlisted by default. That's usually the right fit for games and single-community tools. If you want your app to appear in the App Directory so any moderator can install it, use `npx devvit publish --public` and follow the listing guidance in [Launch your app](./launch/launch-guide.md). -Public apps should look launch-ready: the launch docs call for a detailed installer-facing `README.md`, and game launch guidance expects a custom launch or first screen rather than a rough default experience. +All apps submitted for review should look launch-ready: the launch docs require an app [`README.md`](../devvit_rules.md#app-readme-requirements), and game launch guidance expects a custom launch or first screen rather than a rough default experience.
@@ -416,7 +416,7 @@ Domain requests are reviewed separately from app publishing and can take **up to To make approval go smoothly: - Use exact hostnames only — no wildcards (`*.example.com`), no protocols (`https://`), and no paths (`api.example.com/webhooks`). -- Add a "Fetch Domains" section to your `README.md` listing each domain and explaining why you need it. The expected format is documented in [HTTP Fetch](../capabilities/http-fetch.md). +- Add a "Fetch Domains" section to your app [`README.md`](../devvit_rules.md#app-readme-requirements) listing each domain and explaining why you need it. The expected format is documented in [HTTP Fetch](../capabilities/http-fetch.md). - Include links to your Terms and Conditions and Privacy Policy in your app details form. Before submitting, check the [global fetch allowlist](../capabilities/http-fetch.md#global-fetch-allowlist) — if your domain is already listed there, no separate request is needed. Personal domains (e.g., `personaldomain.com`) aren't approved. diff --git a/docs/guides/launch/launch-guide.md b/docs/guides/launch/launch-guide.md index fc909149..80c33aa6 100644 --- a/docs/guides/launch/launch-guide.md +++ b/docs/guides/launch/launch-guide.md @@ -46,7 +46,7 @@ Launching your app signals to Reddit’s algorithmic feeds that it is ready for Apps are submitted for review through the CLI. To launch your app: -1. Add a user-friendly overview in your app’s `README.md`. +1. Add the required app [`README.md`](../../devvit_rules.md#app-readme-requirements). 2. Run `npx devvit publish`. You can optionally choose the version bump type with `--bump`: @@ -80,11 +80,7 @@ Ensuring your app complies with all [Devvit Rules](https://developers.reddit.com If your app is a general-purpose moderation tool, community utility, or otherwise broadly applicable, you can request to list it in the [App Directory](https://developers.reddit.com/apps). Listing makes your app installable by any moderator. -Publicly listed apps must include a detailed `README.md` with: - -- A comprehensive app overview. -- Installer-facing instructions. -- Changelogs for major updates. +All apps submitted for review must include an app [`README.md`](../../devvit_rules.md#app-readme-requirements). To list your app: @@ -100,4 +96,3 @@ We do not recommend listing apps built for a single subreddit, as this may confu - Questions? Join our Discord or post in [r/Devvit](https://www.reddit.com/r/Devvit/). - Review the [Devvit Rules](https://developers.reddit.com/docs/devvit_rules) before publishing. - Learn more about [how to earn](../../earn-money/payments/payments_overview.md) from your apps. - diff --git a/versioned_docs/version-0.13/capabilities/http-fetch.md b/versioned_docs/version-0.13/capabilities/http-fetch.md index f9d8c253..4dc1fdf9 100644 --- a/versioned_docs/version-0.13/capabilities/http-fetch.md +++ b/versioned_docs/version-0.13/capabilities/http-fetch.md @@ -24,7 +24,7 @@ devvit.json ### Requesting a domain to be allow-listed :::note -If you're porting a Data API app as part of our [App Migration Programs](https://www.reddit.com/r/Devvit/comments/1sgwkm7/bring_your_data_api_apps_to_devvit_and_details/) you may be eligible for special fetch domain exceptions. Please list at the top of your Devvit app's README.md file which Data API app you are migrating (account username), and which domains you need access to. Our App Review team will provide exemptions for program participants. +If you're porting a Data API app as part of our [App Migration Programs](https://www.reddit.com/r/Devvit/comments/1sgwkm7/bring_your_data_api_apps_to_devvit_and_details/) you may be eligible for special fetch domain exceptions. Please list at the top of your Devvit app's [`README.md`](../devvit_rules.md#app-readme-requirements) file which Data API app you are migrating (account username), and which domains you need access to. Our App Review team will provide exemptions for program participants. ::: Apps may request a domain to be added to the allow-list by specifying domains in the http configuration. This configuration is optional, and apps can still configure http: true as before. @@ -183,13 +183,13 @@ Requests to use any other AI provider will be denied. ### Documentation requirements -If your app uses fetch domains, you must add context to your app's README for the approval process: +If your app uses fetch domains, add this context to your app's [README](../devvit_rules.md#app-readme-requirements) for the approval process: -1. Create a "Fetch Domains" section in your README +1. Create a "Fetch Domains" section in your [README](../devvit_rules.md#app-readme-requirements) 2. List each domain you're requesting and explain why you need it 3. Ensure your usage complies with our fetch guidelines -Example README section: +Example Fetch Domains section: ``` @@ -204,7 +204,7 @@ The following domains are requested for this app: ### Domain requirements :::note -If you're porting a Data API app as part of our [App Migration Programs](https://www.reddit.com/r/Devvit/comments/1sgwkm7/bring_your_data_api_apps_to_devvit_and_details/) you may be eligible for special fetch domain exceptions. Please list at the top of your Devvit app's README.md file which Data API app you are migrating (account username), and which domains you need access to. Our App Review team will provide exemptions for program participants. +If you're porting a Data API app as part of our [App Migration Programs](https://www.reddit.com/r/Devvit/comments/1sgwkm7/bring_your_data_api_apps_to_devvit_and_details/) you may be eligible for special fetch domain exceptions. Please list at the top of your Devvit app's [`README.md`](../devvit_rules.md#app-readme-requirements) file which Data API app you are migrating (account username), and which domains you need access to. Our App Review team will provide exemptions for program participants. ::: Domain entries must be exact hostnames only, such as nytimes.com or wikipedia.org. In addition: diff --git a/versioned_docs/version-0.13/capabilities/server/http-fetch-policy.md b/versioned_docs/version-0.13/capabilities/server/http-fetch-policy.md index 2e1fd0bb..0f6557b4 100644 --- a/versioned_docs/version-0.13/capabilities/server/http-fetch-policy.md +++ b/versioned_docs/version-0.13/capabilities/server/http-fetch-policy.md @@ -32,13 +32,13 @@ Requests to use any other AI provider will be denied. ### Documentation requirements -If your app uses fetch domains, you must add context to your app's README for the approval process: +If your app uses fetch domains, add this context to your app's [README](../../devvit_rules.md#app-readme-requirements) for the approval process: -1. Create a "Fetch Domains" section in your README +1. Create a "Fetch Domains" section in your [README](../../devvit_rules.md#app-readme-requirements) 2. List each domain you're requesting and explain why you need it 3. Ensure your usage complies with our fetch guidelines -Example README section: +Example Fetch Domains section: ``` ## Fetch Domains @@ -107,4 +107,4 @@ The following domains are globally allowed and can be fetched by any app: - propublica.org - pbs.org - i.giphy.com -- chessboardjs.com \ No newline at end of file +- chessboardjs.com diff --git a/versioned_docs/version-0.13/devvit_rules.md b/versioned_docs/version-0.13/devvit_rules.md index 91e7667a..bd38d0c1 100644 --- a/versioned_docs/version-0.13/devvit_rules.md +++ b/versioned_docs/version-0.13/devvit_rules.md @@ -18,7 +18,17 @@ You can start the Reddit app review process by [publishing your app](./guides/la - Thoroughly playtesting your app, - Carefully reviewing these Devvit Rules and other Reddit Terms & Policies, and -- Providing a detailed app description. +- Providing a detailed app description and app README. + +### App README requirements + +Apps must include a descriptive `README.md` file in the root directory of the app project (for example, `project-directory/README.md`). Apps submitted with a missing, empty, default template README, or vague README will be rejected. + +Your README should be written in simple terms for a non-developer audience and include: + +- An app overview summary at the top (1000 words or fewer) explaining what the app does, who it is for, and critical operational notes +- Instructions on how to configure, deploy, and interact with the app's full feature set +- A changelog detailing what has changed in each new version submission As part of Reddit app review, we may review your code, read through your app’s description, test your app, and provide feedback. We may use third-party LLMs to help us conduct this review. When your app review is complete, we’ll notify you about your app’s status, which could be: diff --git a/versioned_docs/version-0.13/guides/faq.mdx b/versioned_docs/version-0.13/guides/faq.mdx index f7263807..f373a2a7 100644 --- a/versioned_docs/version-0.13/guides/faq.mdx +++ b/versioned_docs/version-0.13/guides/faq.mdx @@ -133,7 +133,7 @@ For command syntax, see [Devvit CLI](./tools/devvit_cli.mdx). For the review and
What should I do after playtest when I am ready to launch? -Before launch, make sure the app is stable across mobile and web, test with multiple accounts, and add an installer-friendly `README.md`. Then follow the publish flow in [Launch your app](./launch/launch-guide.md). +Before launch, make sure the app is stable across mobile and web, test with multiple accounts, and add the required app [`README.md`](../devvit_rules.md#app-readme-requirements). Then follow the publish flow in [Launch your app](./launch/launch-guide.md). If you're just ending a playtest session, remember that the latest playtest install remains in place until you change installs. [Playtest](./tools/playtest.md) and [`devvit install`](./tools/devvit_cli.mdx#devvit-install) cover that handoff. @@ -151,9 +151,9 @@ Most app versions are reviewed within **1–2 business days**. New apps or versi To keep review moving: -- Make sure your `README.md` is clear, accurate, and up to date. +- Make sure your app [`README.md`](../devvit_rules.md#app-readme-requirements) is clear, accurate, and up to date. - Ensure your app complies with the [Devvit Rules](../devvit_rules.md). -- If your app uses fetch domains, document them in a "Fetch Domains" section of your README. +- If your app uses fetch domains, document them in a "Fetch Domains" section of your [README](../devvit_rules.md#app-readme-requirements). If you haven't heard back after a week, reach out in the [Devvit Discord](https://developers.reddit.com/discord) or via [r/Devvit Modmail](https://www.reddit.com/message/compose/?to=r/Devvit). For the full publish flow, see [Launch your app](./launch/launch-guide.md). @@ -175,7 +175,7 @@ If the goal is broader distribution, follow [Launch your app](./launch/launch-gu Published apps are unlisted by default. That's usually the right fit for games and single-community tools. If you want your app to appear in the App Directory so any moderator can install it, use `npx devvit publish --public` and follow the listing guidance in [Launch your app](./launch/launch-guide.md). -Public apps should look launch-ready: the launch docs call for a detailed installer-facing `README.md`, and game launch guidance expects a custom launch or first screen rather than a rough default experience. +All apps submitted for review should look launch-ready: the launch docs require an app [`README.md`](../devvit_rules.md#app-readme-requirements), and game launch guidance expects a custom launch or first screen rather than a rough default experience.
@@ -416,7 +416,7 @@ Domain requests are reviewed separately from app publishing and can take **up to To make approval go smoothly: - Use exact hostnames only — no wildcards (`*.example.com`), no protocols (`https://`), and no paths (`api.example.com/webhooks`). -- Add a "Fetch Domains" section to your `README.md` listing each domain and explaining why you need it. The expected format is documented in [HTTP Fetch](../capabilities/http-fetch.md). +- Add a "Fetch Domains" section to your app [`README.md`](../devvit_rules.md#app-readme-requirements) listing each domain and explaining why you need it. The expected format is documented in [HTTP Fetch](../capabilities/http-fetch.md). - Include links to your Terms and Conditions and Privacy Policy in your app details form. Before submitting, check the [global fetch allowlist](../capabilities/http-fetch.md#global-fetch-allowlist) — if your domain is already listed there, no separate request is needed. Personal domains (e.g., `personaldomain.com`) aren't approved. diff --git a/versioned_docs/version-0.13/guides/launch/launch-guide.md b/versioned_docs/version-0.13/guides/launch/launch-guide.md index fc909149..80c33aa6 100644 --- a/versioned_docs/version-0.13/guides/launch/launch-guide.md +++ b/versioned_docs/version-0.13/guides/launch/launch-guide.md @@ -46,7 +46,7 @@ Launching your app signals to Reddit’s algorithmic feeds that it is ready for Apps are submitted for review through the CLI. To launch your app: -1. Add a user-friendly overview in your app’s `README.md`. +1. Add the required app [`README.md`](../../devvit_rules.md#app-readme-requirements). 2. Run `npx devvit publish`. You can optionally choose the version bump type with `--bump`: @@ -80,11 +80,7 @@ Ensuring your app complies with all [Devvit Rules](https://developers.reddit.com If your app is a general-purpose moderation tool, community utility, or otherwise broadly applicable, you can request to list it in the [App Directory](https://developers.reddit.com/apps). Listing makes your app installable by any moderator. -Publicly listed apps must include a detailed `README.md` with: - -- A comprehensive app overview. -- Installer-facing instructions. -- Changelogs for major updates. +All apps submitted for review must include an app [`README.md`](../../devvit_rules.md#app-readme-requirements). To list your app: @@ -100,4 +96,3 @@ We do not recommend listing apps built for a single subreddit, as this may confu - Questions? Join our Discord or post in [r/Devvit](https://www.reddit.com/r/Devvit/). - Review the [Devvit Rules](https://developers.reddit.com/docs/devvit_rules) before publishing. - Learn more about [how to earn](../../earn-money/payments/payments_overview.md) from your apps. -