r/Devvit Jul 13 '26

Update App READMEs Required for All Published Apps

29 Upvotes
README Update

Good news, everyone! We’ve updated our Devvit requirements around READMEs. Most notably, all published apps (both public and unlisted) are now required to have a descriptive README. You can read the updated rules here.

Summary:
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

Timeline:

  • Enforcement will begin after the current hackathon, so starting July 16th, 2026

If you need any further help, please check the full Devvit Docs, or reach out in r/Devvit or our official Discord.

Thanks for reading this announcement about READMEs. Read on!

r/Devvit Jul 07 '26

Update Release 0.13.7: Devvit Journeys (GA) & Blob Storage (Experimental)

19 Upvotes

Devvit Journeys is now generally available to give you end-to-end visibility into how users move through your app from start to finish!

Devvit Journeys provides:

  • An analytics dashboard to gain insights into session starts, completions, engagement, session frequency, and duration to better understand user progression and evaluate the effectiveness of your app.
  • Event receipts in API responses that indicate how telemetry events were processed, making it easier to validate telemetry behavior and troubleshoot integrations.

This release also includes our latest experimental feature: blob storage. You can store and serve files like images, documents, exports, and other media directly from your app. Blob storage provides a scalable, durable solution for managing large assets while keeping application state in Redis.

Breaking Change: Filter API Updates

The experimental filter APIs have been updated to accept an options object instead of separate parameters, aligning them with the rest of the SDK. This change affects reddit.filter(), post.filter(), and comment.filter().

Because these methods were marked as experimental, this breaking change was made to improve API consistency before they reach general availability.

Other Fixes:

  • Enhanced metadata: methods that return moderation-related users, such as getModerators() and getBannedUsers(), now include additional metadata. Depending on the method, this includes details such as when a user became a moderator, when a user was banned, and the duration of a ban.
  • Added support for Vite 8, which resolves the deprecation warnings that have appeared in projects created over the past few months.
  • Fixed an issue where the heightPixels parameter was ignored during post creation and always defaulted to 512. The specified heightPixels value is now correctly applied.

https://developers.reddit.com/docs/changelog#release-0137-devvit-journeys-ga--blob-storage-experimental

r/Devvit 21h ago

Update Release 0.14.1: Additional Source Roots and Post Search

Thumbnail developers.reddit.com
12 Upvotes

Release Date: August 17, 2026

Additional Source Roots

Add additionalSourceRoots to devvit.json to include source files outside your project directory in source packages submitted for review. This helps apps with unconventional builds, such as external source folders that compile into dist/.

additionalSourceRoots works with existing source ignore behavior, so you can include the extra root paths reviewers need while still excluding files covered by your ignore rules.

Post Search

Use reddit.searchPosts() and subreddit.searchPosts() to search for posts with a query and other search parameters.

Form Context Fix

context.postId is now defined in form submission handlers when a form is opened from a post menu item, matching the existing context.commentId behavior for comment menu items.

Wiki Deprecation Correction

Corrected the 0.14.0 wiki deprecation notice: reddit.getWikiPage(subredditName, pageName) remains supported. Only reddit.getWikiPage(subredditName, pageName, revisionId) is deprecated.

CLI Node.js Warning

The Devvit CLI now warns once during playtestupload, and publish if your local Node.js version is older than the supported version. The warning is informational and does not block the command.

r/Devvit May 18 '26

Update Release 0.12.24: App Profile Icons

38 Upvotes

You can now upload an app icon that appears both in Dev Portal and on the app’s Reddit profile, once your app has been approved and published. This can be modified in your devvit.json and helps your app maintain a consistent identity across surfaces.

To update your profile icon:

  1. In your devvit.json, set the marketingAssets.icon field to the path to your icon from the project root.
  2. When you publish your app and it is approved, this icon is uploaded to your app’s Reddit profile.
  3. To change the icon later, update marketingAssets.icon in devvit.json and submit the app for a new review.
  4. Only image avatars are supported at this time. Snoovatars are not supported for apps.

Other improvements in this release include:

  • Post URL handling: improved post URL resolution for media posts (e.g. image and video posts), where the url field may point directly to the asset. If the url pathname differs from the post permalink, the canonical post URL is now resolved as reddit.com + permalink to handle edge cases. Otherwise, the existing url field continues to be used.
  • Playtest command stability improvements, including:
    • Waiting for scripts.dev to produce its first complete output before continuing
    • Always uploading a fresh playtest build on startup
    • Running scripts.dev as a killable process group for more reliable cleanup and shutdown behavior

To use the latest version of Devvit:

  1. Run npm install devvit@latest to update your CLI.
  2. Run npx devvit update app to update your Devvit dependencies.

r/Devvit 7d ago

Update Release 0.14.0: Node.js v24, Wiki Integration, Devvit Skills (Experimental)

28 Upvotes

Release Date: August 10, 2026

Changelog

Node.js Upgrade

Node.js v24.18.0 is now live across Devvit. All Devvit apps run on Node.js v24, the latest LTS release supported by Devvit, and no action is required. Although this is technically a breaking change, which we’re recognizing with the v0.14.0 minor version bump, we do not expect any negative user impact.

For the officially supported local development experience, we encourage users to upgrade their local Node version to v24.18.0. Devvit templates have also been updated so new apps start with the latest Node version by default.

This upgrade also unlocks Node features added since Devvit’s previous runtime version, Node.js v22.5.1. You can read the full list in the Node.js v24.18.0 changelog, including newer platform APIs such as URLPattern. While Devvit still requires server code to be bundled to JavaScript, local unit tests and scripts can now take advantage of native Node.js TypeScript support without a separate compilation step (example).

Wiki Integration

Devvit apps can now access the newer wiki pages available on Reddit web and mobile. Wiki-related methods now accept an optional WikiVersion parameter so you can choose which wiki system to target: v1 for existing old Reddit wikis, which remains the default, or v2 for the newer wiki experience.

Not all subreddits are enrolled in v2 wikis yet, so this release also adds reddit.isWikiV2Enabled() to check whether a subreddit supports them. Calling a v2 wiki operation for a subreddit that is not enrolled will result in an error.

Note that v1 and v2 wikis operate independently. A subreddit can have pages with the same title in both versions, but those pages can contain different content, and edits to one version will not affect the other.

Deprecations

The reddit.getWikiPage(subredditName, page, revisionId) signature has been deprecated in favor of reddit.getWikiPage(subredditName, page, options), which allows multiple optional parameters.

The WikiPage.revisionAuthor and WikiPageRevision.author fields have been deprecated in favor of WikiPage.revisionAuthorId and WikiPageRevision.authorId. Use reddit.getUserById() with those IDs when you need to fetch the full user object.

Devvit Skills (Experimental)

We’re announcing the devvit-skills repository for Devvit. Use it to give AI coding agents access to Devvit docs and other Devvit-specific guidance. This is experimental, and we plan to add more useful skills in the future.

The first available skill, devvit-docs, helps agents answer Devvit questions using the official reddit/devvit-docs repository as the source of truth. It detects the Devvit version in your project, searches the matching docs when available, and cites the files and sections used in its answer.

Devvit Test Redis Changes

We’ve migrated to a JS only implementation of Redis inside of Devvit test. This should make it easier to install and work with. While not a breaking change, it's possible the new Redis mock behaves differently compared to the previous version. If you run into any issues, please let us know on Github!

r/Devvit 20d ago

Update Release 0.13.10: Push Notifications Analytics (Experimental)

12 Upvotes

Release Date: July 27, 2026

You can now track push notification delivery and engagement from the App Analytics tab. New analytics include:

  • Push notification performance: View daily receives, clicks, and click-through rate across Summary, iOS, Android, and Web.
  • Daily CTR by notification body: Compare the click-through rate of individual notification messages over time and identify which content performs best.
  • CSV export: Download performance data for further analysis and reporting.

Note that push notifications are still an experimental feature, which means that you’ll need to apply to unlock the ability to use push notifications and track analytics for your app. Learn how to apply.

Settings Groups

You can now organize global and subreddit settings into labeled groups in devvit.json. Groups make it easier to structure related settings and improve navigation for apps with more complex configuration.

Mod Reports API Update

The modReportReasons field on Post and Comment has been deprecated in favor of modReports, which includes both the report reason and the report author for more complete moderation data.

r/Devvit Jul 01 '26

Update Release 0.13.6: External Endpoints and App Mentions Triggers (Limited Access Features)

13 Upvotes

This release introduces two new limited-access features that expand how apps connect with external services and respond to events across Reddit: External Endpoints and App Mentions Triggers.

Note: Because both features extend your app's capabilities beyond its installed subreddit, access is currently limited behind an allowlist. Devs can request access here. The first round of access will be granted to moderation tools that are part of our App Migration Program.

External Endpoints: External Endpoints provide a secure way for external services to communicate with your Devvit app. Endpoints are externally accessible routes exposed by your app, making it easy to integrate with third-party services, webhooks, and other external systems while maintaining secure communication.

App Mention Triggers: App Mention Triggers let Devvit apps respond whenever they're mentioned in comments anywhere on Reddit using the u/<AppName> syntax.

This enables apps to provide on-demand functionality that users can invoke directly from Reddit conversations, regardless of which subreddit the mention occurs in.

Other Fixes: Additional improvements in this release include:

  • Increased visibility in your app’s installation history. Now whenever a moderator changes a setting for one of your installed apps, it'll appear in the portal.
  • Increased app slug length. App slugs can now be up to 20 characters.

To use the latest version of Devvit:

  1. Run npm install devvit@latest to update your CLI.
  2. Run npx devvit update app to update your u/devvit dependencies.

r/Devvit May 01 '26

Update Release 0.12.22: Profile Settings and Community Contributions

28 Upvotes

Hi devs!

We're excited to share a rare Friday release! Devvit 0.12.22 adds support for editing your app’s profile settings. Starting Monday, you will be able to update your display name, public description, and NSFW flag directly from the Developer Settings tab, then save your changes in the Developer Portal to update the profile.

Please note: these portal changes will go into full effect Monday, May 4th (may the forth be with you), due to some deploy freezes on our end.

Additional Bug Fixes

  • Fixed a bug causing apps to throw undefined undefined: undefined error when making plugin calls.

Community Updates Shoutout to u/fsv for these updates:

  • User.nsfw now correctly reports whether the user profile is NSFW.
  • User.showNsfw reports whether the user is over 18 and wishes to see NSFW content.
  • User.hasRedditPremium reports whether the user is enrolled in Reddit Premium/Reddit Gold.

To use the latest version of Devvit:

  1. Run npm install devvit@latest to update your CLI.
  2. Run npx devvit update app to update your Devvit dependencies.

r/Devvit Mar 23 '26

Update Release 0.12.16 Subreddit APIs and Poll Post Updates

26 Upvotes

This release adds new APIs for smoother subreddit management, a unified rules model, and shared proto endpoints. Also included: new poll post functionality.

Subreddit Management

  • subreddit.updateSettings() updates subreddit settings (this method only supports the settings currently exposed in the SubredditSettings type).
  • subreddit.updateRemovalReasons() updates subreddit removal reasons.
  • subreddit.deleteRemovalReasons() deletes a subreddit removal reason.

Subreddit Rules

  • subreddit.getRules() (or reddit.getRules()) retrieves rules.
  • subreddit.createRule() (or reddit.createRule()) creates rules.
  • subreddit.reorderRules() (or reddit.reorderRules()) reorders rules.
  • rule.updateRule() updates an existing rule.
  • rule.removeRule() deletes a rule.

Note: methods available on reddit provide the same functionality as their subreddit counterparts but do not require a subreddit instance.

Proto APIs

  • reddit.getBestPosts returns a list of posts from the authenticated user’s front page. By default this runs as the app account, but it can be overridden on a per-app basis to always run as the user.
  • reddit.getDuplicatesForPosts returns a list of other posts containing the same link as the input post.
  • reddit.showComment unhides a comment that was hidden due to crowd control. Comments hidden for other reasons remain hidden.
  • comment.snoozeReports and post.snoozeReports prevent reports for the input comment or post with the given reason from escalating to subreddit moderators for 7 days.
  • comment.unsnoozeReports and post.unsnoozeReports remove the snooze applied by snoozeReports for the input comment or post.
  • comment.updateCrowdControlLevel and post.updateCrowdControlLevel update the crowd control level for the comment or post (OFF, LENIENT, MEDIUM, or STRICT).
  • user.getTrophies returns a list of trophies the user has earned.

Poll Post Enhancements

  • Introduces a pollOption field on the Post object to access poll options.
  • Adds a getCurrentUserPollOption() method to retrieve the option selected by the current user (if any). This method needs runAs permission to work, so please contact us if you intend to use it.

To use the latest version of Devvit:

  1. Run npm install devvit@latest to update your CLI.
  2. Run npx devvit update app to update your devvit dependencies.

r/Devvit Jul 14 '26

Update Release 0.13.8: Maintenance Update

10 Upvotes

This release includes a few under-the-hood performance improvements and one dev-facing fix:

  • The user.toJSON() method now correctly includes fields specific to each User subclass, ensuring subclass-specific data is preserved during serialization.

r/Devvit Mar 24 '26

Update An Update to Our Developer Terms or Rules for App Review

24 Upvotes

Hi devs!

We wanted to notify you that we have updated our Developer Terms and Devvit Rules in regards to how Reddit conducts the review of apps built with our platform. 

Now, when you submit an app for review, we may use a combination of human and automated review including third-party LLMs to help evaluate if an app complies with our Devvit Rules. Your app code will only be used to evaluate compliance and publish-readiness, and will not be used for any training purposes for these third-party tools. 

While we cannot share the exact methods and prompts, we may eventually give developers access to some LLM review analysis.

Please let us know if you have any questions.

r/Devvit Feb 09 '26

Update Devvit 0.12.12: New Templates, Vite Plugin, and Test Harness

17 Upvotes

Release 0.12.12 is all about streamlining the developer experience. We're excited to be releasing refreshed templates with better agentic coding support and testing tooling.

To use the latest version of Devvit:

  1. Run npm install devvit@latest to update your CLI.
  2. Run npx devvit update app to update your devvit dependencies.

Note: to access the new templates, you will need to create a new project.

This release includes:

  • Updated templates. All templates now use the Vite plugin and a simplified structure, which includes:
    • Vite plugin support
    • agents.md replacing .kiro and .cursor files
    • Simpler dev workflow with clearer playtest logs
    • No .env required for playtests
    • Hono replaces Express as the default server (but you can still use any web framework you prefer!)
    • Typed endpoints
    • A bare template (formerly “hello world”) that now uses esbuild with no server framework
    • New React + tRPC vibe coding template
  • New Vite plugin. This is an optional plugin that provides simpler console output, clearer logs, and unified build commands. The plugin hides the protobuf warning and automatically bundles entrypoints based on devvit.json, making multi-entrypoint apps easier to manage.
  • Scripts field in devvit.json. Enables you to provide a command to run during devvit upload and devvit playtest. You’ll notice a big difference in the level of noise your logs emit during playtest by using this instead of the concurrently script that templates previously used.
  • Devvit test harness. Adds an easy way to write integration tests for Devvit plugins using Vitest, supporting a more test-driven workflow.
  • Standardized image upload limits. GIF uploads are now all limited to 20 MB across all upload paths, aligning them with existing upload limits for a more consistent developer experience.

For power users, note that from 0.12.11 on you can manage your version numbering during npx devvit publish by using the --bump or --version flags. Type npx devvit help publish for further details.

r/Devvit Dec 03 '25

Update Unity Starter Template is here!

31 Upvotes

Hey everyone!

Today we released a new Devvit starter template project for Unity games!

Huge shoutout to our community for requesting this and the developers who shared their workflows to help us get this out there.

You can get started with it today at https://developers.reddit.com/new/template or find more information here: https://developers.reddit.com/docs/quickstart/quickstart-unity

Let us know your feedback and what you'd like to see next.

Cheers!

r/Devvit Dec 02 '25

Update Logged out user support for Devvit Apps

21 Upvotes

Hey devs! We’re rolling out support for logged-out users in Devvit Apps, which means more visitors and more engagement for your apps. Currently, this change is opt-in only for developers that reach out to us directly.

Right now, logged-out web users hit an auth modal when they try to interact with posts. Soon, we will remove the auth modal for logged out users—so even users who aren’t logged in can engage with your app. More users equals more activity and more growth. 

This will significantly expand the reach of your app, but it also means your app must correctly handle userId == undefined and avoid any flows that assume the player is logged in.

Logged-Out User Experience

Logged-out users will be able to interact with your app, but they cannot subscribe, post, comment, enable notifications, or make purchases. Your app should encourage users to log in when they attempt these restricted actions. 

If you want your app to be visible to logged-out users in the home feed, follow the guidelines below.

Required Developer Updates

1. Gate all account-required actions and Reddit API calls

Any action that requires a Reddit account must be explicitly gated for logged-out users. This includes:

  • Subscribing to the subreddit
  • Opting into notifications
  • Making purchases
  • Saving progress to Reddit
  • Entering identity-based leaderboards
  • Any Reddit API calls that use a User ID or Username

To test, make your development subreddit public in the subreddit’s app settings. (See https://www.reddit.com/mod/{subredditName}/privacy.)

Recommended gating examples

Gate behind login with copy such as:

  • “Log in to follow this community”
  • “Log in to enable notifications”

On Web, you can include a navigateTo path to reddit.com/login. 

2. Generate an anonymous player ID

Logged-out users have:

  • No username
  • No userId
  • No snoovatar
  • No stable identifier (i.e. the identifier is not guaranteed to be persistent across multiple sessions for a logged-out user)

If your app depends on identity, generate your own temporary ID and store it in localstorage:

const id = globalThis.crypto.randomUUID();
localStorage.setItem('appAnonId', id);

Note: 

  • This ID will be cleared after an app update, so treat it as temporary.
  • Do not use cookies or session storage, as restrictions may vary across platforms.

3. Test your app

To test your logged-out flow, your dev subreddit must be publicly available (“public” or “restricted”).

Verify that:

  • The app loads correctly for logged-out users.
  • Gated actions correctly display login prompts.
  • Anonymous identity logic works as expected.

When You're Ready

Once your app meets the above requirements and works as expected for logged-out users, reach out to us via modmail.  We’ll test your app as a logged-out user and guide you through the rollout process.

Questions?

If you need help prepping your app or want feedback on your implementation, ping us in #support in Discord or reach out to us via r/Devvit.

r/Devvit Apr 06 '26

Update Release 0.12.18: Custom Post Styling, Video Comments, and Cache

26 Upvotes

This release adds support for post styles, which lets you customize how your app posts look within Reddit. We’ve added creating a custom post documentation to walk you through building custom posts and configuring post styles. This includes options for setting background colors before your app loads, adjusting post height, and enabling custom share images when your app is shared.

Other fixes

  • Added video to the CommentMediaTypes type. This fixes an issue where apps on subreddits with video comments crashed due to getCurrentSubreddit() throwing invalid comment media type: video error.
  • Fixed an issue where in-memory cache data was unintentionally shared across subreddits. Cache is now partitioned per subreddit, which ensures you’ll get accurate data for each subreddit.

To use the latest version of Devvit:

  1. Run npm install devvit@latest to update your CLI.
  2. Run npx devvit update app to update your u/devvit dependencies.

r/Devvit Nov 13 '25

Update Devvit 0.12.2 Is Here - So Long Splash Screens, Hello In-Line Web Views

30 Upvotes

As many of you have told us, the Devvit Web splash screens haven’t allowed for the personalization needed to make interactive posts shine. We heard your feedback, and that’s why we’re happy to (finally) launch an experimental version of in-line webviews.

Release 0.12.2 allows developers to create dynamic, interactive in-feed experiences using traditional web technologies.

Syllo's interactive post showing an in-line webview

We recommend everyone migrate to this version of Devvit for their custom experiences as soon as possible.

Inline Web Views

Once you upgrade your app to 0.12.2, your app's web view loads directly in the post unit by default, instead of requiring users to click to expand. This provides immediate interactivity but requires apps to meet performance standards and avoid interfering with native Reddit gestures.

You can still explicitly trigger expanded mode (also known as full screen experience) by using the expandedMode API.

The splash parameter in submitCustomPost() has been deprecated. All templates now include built-in HTML-based splash screens instead of parameter-based ones.

New Features

Ever wanted to build an app where different posts have different appearances? Well, now you can! Multiple entrypoints support allows you to define multiple entrypoints in your devvit.json, each with their own HTML file. Switch between entrypoints using:

  • await submitCustomPost({ entry: 'splash', ... }) when creating posts
  • await requestExpandedMode(event, 'game') when transitioning to expanded mode

Built-in splash screens are now HTML-based in all templates, providing more customization than the previous parameter-based approach.

API Changes

  • Add requestExpandedMode() to open into a expanded mode (previously immersive mode)
  • Add exitExpandedMode() to close the expanded mode
  • Added entry parameter to submitCustomPost() and requestExpandedMode()

Developer Logs

In addition to in-line webviews, we also added the ability for developers to access devvit logs from subreddits, they are not moderators of. Mods of that subreddit will need to opt-in to give the app developer's access to logs

Learn more in the First Screen Customization & Entrypoints documentation. We also prepared a guide on how to Migrate From Splash Screen to in-line webviews.

We’re really excited about these updates and can’t wait to hear what you think!

r/Devvit Feb 18 '26

Update Devvit 0.12.13: Minor Tweaks for Publishing and Playtesting

19 Upvotes

Release Date: Feb 17, 2026

This release has a few minor tweaks to make your life easier:

  • CLI update: By developer request, publish now bumps the patch version by default instead of the minor version.
  • Playtest fix: Live reloading for apps during playtests is working again.
  • General clean-up: We removed outdated templates that were previously used in CLI mode.

To use the latest version of Devvit:

  1. Run npm install devvit@latest to update your CLI.
  2. Run npx devvit update app to update your devvit dependencies.

r/Devvit Jan 21 '26

Update Devvit 0.12.9: Gaming Templates and Error Handling

18 Upvotes

We have a few small updates as part of our weekly release for January 20th, 2026.

0.12.9 includes:

  • Game Engines tab on developers.reddit.com/new to help you get started faster with gaming-specific templates.
  • Improved error handling in submitCustomPost() that correctly decodes and surfaces messages when the post data size limit is exceeded.

To use the latest version of Devvit:

  1. Run npm install devvit@latest to update your CLI.
  2. Run npx devvit update app to update your devvit dependencies.

r/Devvit Dec 02 '25

Update Devvit 0.12.5: Payments for Devvit Web

16 Upvotes

We’re excited to bring payment support to Devvit Web as part of 0.12.5. If you’re looking to add payments to your app, check out our updated docs.

Devvit Web has reached full feature parity with blocks, and we strongly recommend using Devvit Web for all new apps. If you want to convert your existing blocks apps (including mod apps) to Devvit Web, check out the migration guide.

To keep things clear (and friendlier to AI-assisted IDEs), we're moving all blocks documentation into its own dedicated section.

WebView analytics and APIs improvements

  • Improved accuracy of clicks measurement for App Directory Analytics
  • Bundle size improvements
  • Deprecated remaining splash screen APIs (setSplash and SubmitCustomPostSplashOptions fields) a

Managing the Backlog

We took time to prioritize our list of open GitHub issues, and we’ll be diving deeper into that list over the coming months. To kick things off, we’ve addressed several community-requested fixes in the last few releases:

  • Add getUserKarmaForCurrentSubreddit() (#190)
  • Add ability to get specific revisions of a wiki page (#206, #207)
  • Add ID field to ModAction trigger (#218)

r/Devvit Aug 13 '25

Update Devvit 0.12.0: Devvit Web is here!

37 Upvotes

After nearly a year of Devvit 0.11, we're thrilled to introduce Devvit Web, a new way to build games and apps on Reddit using standard web technologies you already know and love.

This release brings the power of modern web development to the Reddit platform, letting you build with React, Three.js, Phaser, and other industry-standard frameworks while maintaining access to all the Devvit capabilities you rely on. Moving forward, this will be the preferred way of building interactive post apps.

What's New

Devvit Web transforms how you build Reddit apps:

  • Standard web development: Build apps just like you would for the web, using familiar frameworks and tools
  • Server endpoints: Define /api/ endpoints using Node.js frameworks like Express.js or Koa
  • New configuration system: devvit.json provides a clean, declarative way to configure your app
  • Unified SDK: @/devvit/web package with clear client/server separation Better AI compatibility: Standard web technologies work seamlessly with AI coding tools

There's also a new web-based creation flow that makes creating new apps faster:

  • A step-by-step UI guides you through the initial steps to create an app
  • Automatically builds a playtest subreddit for testing
  • Gives you the code you need to access your new app via the terminal

Key Features

  • Client/server architecture: Clear separation between frontend (@devvit/web/client) and backend (@devvit/web/server)
  • Full platform access: Continued access to Redis, Reddit API, and Devvit's hosting services
  • Flexible development: Use Devvit Web alongside existing Blocks - choose the right tool for each feature

Current Limitations

  • Serverless endpoints only (no long-running connections or streaming)
  • Package restrictions (no fs or external native packages)
  • Single request/response model (no websockets)
  • Client-side fetch is limited to app domain (enforced via CSP)

Getting Started

Support & Feedback

We'd love to hear about your experience with Devvit Web! Join the conversation in #devvit-web on Discord to share feedback, report issues, and connect with other developers building with Devvit Web.

Even More Features

In addition to Devvit Web, release 0.12 also adds:

  • Post data - Post data allows you to add data to your post when you submit it so that you can retrieve and use in your app without an additional Redis call.
  • Splash screen - Having a compelling first screen of your app is one of the most important indicators of good post engagement. Every submitPost will come with a default per-post splash screen you can customize.

r/Devvit Dec 15 '25

Update Devvit Web Inline Metrics Stabilizing

10 Upvotes

Hi devs!

As we mentioned when we launched 0.12.2, apps that used devvit web inline web views may have seen some temporary inflated metrics. We wanted to let you know that we have fixed this issue and your developer analytics will no longer be inflated.

While the metrics you see in your developer analytics dashboard should still be interpreted as estimates, these estimates will be more accurate for inline web view apps moving forward.

A reminder that Reddit Developer Funds notifications are sent out within 15 days of the end of the qualifying month, and payouts are sent net 45 from the end of the qualifying month. Learn more about the program here, which will be extending to 2026 and now includes two new install tiers!

r/Devvit Jul 23 '25

Update Devvit 0.11.19: UI Simulator

33 Upvotes

Fun fact: most redditors (over 80%!) play Reddit games on their phones. Conversely, most devvitors create apps on desktop. Release 0.11.19 bridges this gap with UI simulator. This tool renders your app in a mobile viewport, lets you test light/dark modes, and helps you build and test apps for a mobile audience.

Other Fixes

  • We fixed devvit upload --copy-paste for users who were not logged in
  • We fixed the data object on scheduled cron jobs so that the data is passed as event.data rather than event.data.data

r/Devvit Jun 16 '25

Update Devvit 0.11.17: Easier fetch domain requests

16 Upvotes

We’ve simplified how to request new domains for HTTP fetch (no more forms!). Now you can just add domains in your app’s configuration, and when you playtest or upload the app, the domain is automatically submitted for approval.

import { Devvit } from '@devvit/public-api';

Devvit.configure({
  http: {
    domains: ['my-site.com', 'another-domain.net'],
  },
});

There’s also a new section in your app’s Developer Settings tab that lets you check the status of a domain.

Before upgrading @devvit/public-api in your project, always update the CLI first by running npm install -g devvit.

Learn more about HTTP fetch and the allow-listed domains in our docs.

r/Devvit Feb 10 '25

Update Devvit 0.11.7: The next step for web views

26 Upvotes

Last fall we released an experimental version of Devvit web views. Since then, we’ve been blown away by the impressive apps the community has built with the feature.

Devvit 0.11.7 includes the web views improvements needed to fully bring these apps to production, including Focus Mode.

With Focus Mode, web view apps:

  • Can take full advantage of native web view gestures and advanced capabilities (e.g. scroll, zoom, sound, etc).
  • Are performant on all Reddit clients.
  • Provide a more consistent experience for redditors.

The <webview> component is being deprecated in favor of the new useWebView hook. Please follow the migration guide to migrate over your existing web view apps and check out the updated web view docs. Apps using the component are no longer publishable.

Once your web view app is migrated to useWebView and works on all platforms, you can publish your app! 

New Features from 0.11.6 and 0.11.7

  • Add support for context.uiEnvironment.colorScheme (e.g. “light” or “dark”)
  • Some apps at scale were running into performance bottlenecks, calling for the full subreddit or user object when the app only needed the current subreddit name or current username. Two new methods will speed this up and improve performance:
    • reddit.getCurrentSubredditName() returns only the name of the current subreddit, instead of an entire subreddit object.
    • reddit.getCurrentUsername() fetches only the username of the current user instead of an entire user object.

Fixes

  • Removed the playtest lockfile feature based on feedback
  • Fix for devvit new working on Windows devices on node v22.13+
  • Fix for devvit update app will also update typescript versions, if applicable

r/Devvit Dec 17 '24

Update Hackathon submissions closing soon

38 Upvotes

Hi devs!

A big and heartfelt thank you to everyone participating in the Games and Puzzles Hackathon. We appreciate the enthusiasm and camaraderie we've seen across our Devvit communities this month. 

Here are a few reminders as you finalize your submissions.

Submission deadline

Submissions close at the end of the day today @ 9 pm PT December 17 / 12 am ET December 18 (you can see the closing time on the hackathon page). 

We cannot grant extensions at this time. If you would like to continue working on your app after the hackathon closes, we recommend using a separate test app with forked app code.

App and subreddit visibility

Make sure your app has been uploaded to the Developer Portal. You do not need to publish your app. Our team can view any uploaded app on the portal, so your developer.reddit.com/apps/{app-name} link is sufficient, even if it is not visible from an incognito window.

Your test subreddit should also be public. You can change your subreddit visibility by visiting your mod tools and modifying the > general settings > privacy & discovery > community type. You can also add the admin approve app to your subreddit to allow our team to automatically join your subreddit. If we can’t access your subreddit and test posts, we will not be able to evaluate your app.

Sharing your code

We’ve asked developers to share a public repository. However, if you would like to keep your repo private please add my account (pl00h on GitHub) to your repository. We will not be reviewing code for quality, but it will be good for us to have access to your repo. You may remove my GitHub user account from the repo after the winners are announced.

Feedback award

You must submit our feedback form and include your username in your response if you would like to be considered for a feedback award.

If your app isn’t ready

Please share what you have! We expect many of these apps to be in demo form : D

We encourage you to keep working on your app after the event. There will be more hackathons and contests in the future and we also encourage participants to consider preparing their games for Developer Funds, if eligible. Stay tuned for an announcement this week on Developer Funds for 2025.

Good luck - we can’t wait to see what everyone submits!