Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
18 changes: 18 additions & 0 deletions docs/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,24 @@ To use the latest version of Devvit:

**Please note**: you may see features available across Devvit packages that are not documented or noted in our changelog. These are experimental features that are not stable and are subject to change, or removal, from the platform. Please use caution when testing or implementing experimental features.

# Release 0.14.0: Node.js v24 and Devvit Skills (Experimental)
**Release Date: August 10, 2026**

**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 ([example upgrade](https://github.com/reddit/devvit-template-bare/pull/52/changes)).

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](https://nodejs.org/en/blog/release/v24.18.0), 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](https://github.com/reddit/devvit-template-bare/blob/main/src/server/server.test.ts)).

**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](https://github.com/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.


## Release 0.13.11: Behind-the-Scenes Improvements
**Release Date: August 3, 2026***

Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
[**@devvit/public-api v0.14.0-dev**](../../../README.md)

***

# Devvit

## Type Aliases

- [~~Context~~](type-aliases/Context.md)
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
[**@devvit/public-api v0.14.0-dev**](../../../../README.md)

***

# Type Alias: ~~Context~~

> **Context** = [`ContextAPIClients`](../../../../type-aliases/ContextAPIClients.md) & [`BaseContext`](../../../../type-aliases/BaseContext.md)

The current app context of the event or render.

## Deprecated

- Please switch to the `Context` type exported by public-api.
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
[**@devvit/public-api v0.14.0-dev**](../../../README.md)

***

# EventTypes

#events.ts

Code generated by ts-proto. DO NOT EDIT.

## Enumerations

- [DeletionReason](enumerations/DeletionReason.md)
- [EventSource](enumerations/EventSource.md)

## Interfaces

- [AccountDelete](interfaces/AccountDelete.md)
- [AppInstall](interfaces/AppInstall.md)
- [AppUpgrade](interfaces/AppUpgrade.md)
- [AutomoderatorFilterComment](interfaces/AutomoderatorFilterComment.md)
- [AutomoderatorFilterPost](interfaces/AutomoderatorFilterPost.md)
- [CommentApprove](interfaces/CommentApprove.md)
- [CommentCreate](interfaces/CommentCreate.md)
- [CommentDelete](interfaces/CommentDelete.md)
- [CommentReport](interfaces/CommentReport.md)
- [CommentSubmit](interfaces/CommentSubmit.md)
- [CommentUpdate](interfaces/CommentUpdate.md)
- [MentionInCommentCreate](interfaces/MentionInCommentCreate.md)
- [PostApprove](interfaces/PostApprove.md)
- [PostCreate](interfaces/PostCreate.md)
- [PostDelete](interfaces/PostDelete.md)
- [PostFlairUpdate](interfaces/PostFlairUpdate.md)
- [PostNsfwUpdate](interfaces/PostNsfwUpdate.md)
- [PostReport](interfaces/PostReport.md)
- [PostSpoilerUpdate](interfaces/PostSpoilerUpdate.md)
- [PostSubmit](interfaces/PostSubmit.md)
- [PostUpdate](interfaces/PostUpdate.md)
- [SubredditSubscribe](interfaces/SubredditSubscribe.md)
- [Vote](interfaces/Vote.md)

## Variables

- [AccountDelete](variables/AccountDelete.md)
- [AppInstall](variables/AppInstall.md)
- [AppUpgrade](variables/AppUpgrade.md)
- [AutomoderatorFilterComment](variables/AutomoderatorFilterComment.md)
- [AutomoderatorFilterPost](variables/AutomoderatorFilterPost.md)
- [CommentApprove](variables/CommentApprove.md)
- [CommentCreate](variables/CommentCreate.md)
- [CommentDelete](variables/CommentDelete.md)
- [CommentReport](variables/CommentReport.md)
- [CommentSubmit](variables/CommentSubmit.md)
- [CommentUpdate](variables/CommentUpdate.md)
- [MentionInCommentCreate](variables/MentionInCommentCreate.md)
- [PostApprove](variables/PostApprove.md)
- [PostCreate](variables/PostCreate.md)
- [PostDelete](variables/PostDelete.md)
- [PostFlairUpdate](variables/PostFlairUpdate.md)
- [PostNsfwUpdate](variables/PostNsfwUpdate.md)
- [PostReport](variables/PostReport.md)
- [PostSpoilerUpdate](variables/PostSpoilerUpdate.md)
- [PostSubmit](variables/PostSubmit.md)
- [PostUpdate](variables/PostUpdate.md)
- [SubredditSubscribe](variables/SubredditSubscribe.md)
- [Vote](variables/Vote.md)

## Functions

- [deletionReasonFromJSON](functions/deletionReasonFromJSON.md)
- [deletionReasonToJSON](functions/deletionReasonToJSON.md)
- [eventSourceFromJSON](functions/eventSourceFromJSON.md)
- [eventSourceToJSON](functions/eventSourceToJSON.md)
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
[**@devvit/public-api v0.14.0-dev**](../../../../README.md)

***

# Enumeration: DeletionReason

## Enumeration Members

<a id="explicit_content"></a>

### EXPLICIT\_CONTENT

> **EXPLICIT\_CONTENT**: `5`

***

<a id="legal"></a>

### LEGAL

> **LEGAL**: `2`

***

<a id="other"></a>

### OTHER

> **OTHER**: `3`

***

<a id="spam"></a>

### SPAM

> **SPAM**: `1`

***

<a id="unknown"></a>

### UNKNOWN

> **UNKNOWN**: `4`

***

<a id="unrecognized"></a>

### UNRECOGNIZED

> **UNRECOGNIZED**: `-1`

***

<a id="unspecified_deletion_reason"></a>

### UNSPECIFIED\_DELETION\_REASON

> **UNSPECIFIED\_DELETION\_REASON**: `0`
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
[**@devvit/public-api v0.14.0-dev**](../../../../README.md)

***

# Enumeration: EventSource

## Enumeration Members

<a id="admin"></a>

### ADMIN

> **ADMIN**: `2`

***

<a id="moderator"></a>

### MODERATOR

> **MODERATOR**: `3`

***

<a id="unknown_event_source"></a>

### UNKNOWN\_EVENT\_SOURCE

> **UNKNOWN\_EVENT\_SOURCE**: `0`

***

<a id="unrecognized"></a>

### UNRECOGNIZED

> **UNRECOGNIZED**: `-1`

***

<a id="user"></a>

### USER

> **USER**: `1`
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
[**@devvit/public-api v0.14.0-dev**](../../../../README.md)

***

# Function: deletionReasonFromJSON()

> **deletionReasonFromJSON**(`object`): [`DeletionReason`](../enumerations/DeletionReason.md)

## Parameters

### object

`any`

## Returns

[`DeletionReason`](../enumerations/DeletionReason.md)
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
[**@devvit/public-api v0.14.0-dev**](../../../../README.md)

***

# Function: deletionReasonToJSON()

> **deletionReasonToJSON**(`object`): `number`

## Parameters

### object

[`DeletionReason`](../enumerations/DeletionReason.md)

## Returns

`number`
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
[**@devvit/public-api v0.14.0-dev**](../../../../README.md)

***

# Function: eventSourceFromJSON()

> **eventSourceFromJSON**(`object`): [`EventSource`](../enumerations/EventSource.md)

## Parameters

### object

`any`

## Returns

[`EventSource`](../enumerations/EventSource.md)
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
[**@devvit/public-api v0.14.0-dev**](../../../../README.md)

***

# Function: eventSourceToJSON()

> **eventSourceToJSON**(`object`): `number`

## Parameters

### object

[`EventSource`](../enumerations/EventSource.md)

## Returns

`number`
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
[**@devvit/public-api v0.14.0-dev**](../../../../README.md)

***

# Interface: AccountDelete

## Properties

<a id="deletedat"></a>

### deletedAt?

> `optional` **deletedAt**: `Date`

***

<a id="user"></a>

### user?

> `optional` **user**: `UserV2`

***

<a id="userid"></a>

### userId

> **userId**: `string`
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
[**@devvit/public-api v0.14.0-dev**](../../../../README.md)

***

# Interface: AppInstall

## Properties

<a id="installer"></a>

### installer?

> `optional` **installer**: `UserV2`

***

<a id="subreddit"></a>

### subreddit?

> `optional` **subreddit**: `SubredditV2`
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
[**@devvit/public-api v0.14.0-dev**](../../../../README.md)

***

# Interface: AppUpgrade

## Properties

<a id="installer"></a>

### installer?

> `optional` **installer**: `UserV2`

***

<a id="subreddit"></a>

### subreddit?

> `optional` **subreddit**: `SubredditV2`
Loading
Loading