Skip to main content
Activities are web apps hosted in an iframe that use the Embedded App SDK to communicate with Discord clients. Whether you’re building a multiplayer game, a collaborative tool, or a new social experience, your Activity runs as a web app embedded directly in Discord on desktop, mobile, and web.

Build Your First Activity

Follow the step-by-step guide to build your first Activity using the Embedded App SDK.

How Activities Work

Learn about the lifecycle of Activities and how they run in Discord clients.

Development Guides

Explore common development patterns and practices to make building Activities simpler.

Developing Activities

Your Activity is built as a web app that runs in an iframe inside Discord. You can get started by following the guide on Building an Activity or by exploring the sample projects below.

Embedded App SDK

The Embedded App SDK handles all communication between Discord and your app, making it easier to manage connected users, support mobile clients, and debug your Activity. The SDK provides two primary mechanisms for integration:

Commands

Commands let you interact with the Discord client — authorizing and authenticating users, fetching information about your Activity’s channel, and updating rich presence data. Read the Embedded App SDK documentation for a full list of commands and their usage.

Events

Events let you subscribe to things happening in the connected client that are relevant to your Activity — initial connection, user updates, participant changes, and more. Read the Embedded App SDK documentation for the full list of events.

Sample Projects

Use these sample projects to get started quickly and learn from common development patterns.

Discord Activity Starter

A TypeScript starter template for getting your own Activity up and running quickly.

Embedded App SDK Playground

A reference example implementing all commands and events available in the Embedded App SDK.

Nested Framework App

A reference example demonstrating an Activity using a nested framework like a game engine.
You can also find community-maintained examples on GitHub, including more framework-specific samples.