├── .gitattributes ├── pages ├── index.tsx ├── interactions │ └── slash-commands.mdx ├── menu.tsx ├── dispatch │ ├── dispatch-and-you.mdx │ ├── error-codes.mdx │ └── field-values.mdx ├── _app.tsx ├── typography.mdx ├── rich-presence │ ├── launch-checklist.mdx │ ├── faq.mdx │ └── best-practices.mdx ├── 404.tsx ├── intro.mdx ├── game-and-server-management │ ├── special-channels.mdx │ └── alpha-and-beta-testing.mdx ├── resources │ ├── voice.mdx │ ├── stage-instance.mdx │ ├── application.mdx │ ├── emoji.mdx │ ├── guild-template.mdx │ └── invite.mdx ├── topics │ ├── teams.mdx │ ├── rate-limits.mdx │ ├── certified-devices.mdx │ └── community-resources.mdx ├── game-sdk │ ├── users.mdx │ ├── images.mdx │ ├── overlay.mdx │ └── relationships.mdx └── policy.mdx ├── stylesheets ├── styles.css ├── whitney │ ├── whitneybold.woff │ ├── whitneybook.woff │ ├── whitneylight.woff │ ├── whitneymedium.woff │ ├── whitneysemibold.woff │ ├── whitneybookitalic.woff │ ├── whitneylightitalic.woff │ ├── whitneymediumitalic.woff │ ├── WhitneySemiboldItalic.woff │ └── whitney.css ├── tailwind.css ├── youtube.css ├── scrollbar.css ├── snowflake-deconstruction.css └── prism.css ├── components ├── Footer.tsx ├── mdx │ ├── Emphasis.tsx │ ├── Strong.tsx │ ├── StrikeThrough.tsx │ ├── HorizontalRule.tsx │ ├── Paragraph.tsx │ ├── InlineCode.tsx │ ├── ContentWrapper.tsx │ ├── Anchor.tsx │ ├── List.tsx │ ├── Table.tsx │ ├── Heading.tsx │ └── Code.tsx ├── icons │ ├── CaretFill.tsx │ ├── Check.tsx │ ├── Caret.tsx │ ├── Chevron.tsx │ ├── Bars.tsx │ ├── Copy.tsx │ ├── Moon.tsx │ ├── File.tsx │ ├── Hyperlink.tsx │ ├── Lightbulb.tsx │ ├── Sun.tsx │ ├── Gear.tsx │ └── Discord.tsx ├── YouTubeEmbed.tsx ├── Badge.tsx ├── Alert.tsx ├── Copy.tsx ├── Header.tsx ├── OpenGraph.tsx ├── MDX.tsx ├── Menu.tsx ├── RouteHeader.tsx ├── ThemeSwitcher.tsx └── Snowflake.tsx ├── postcss.config.js ├── tsconfig.eslint.json ├── public └── images │ ├── available-published.png │ └── gift-code-creation.png ├── .prettierrc.json ├── next-env.d.ts ├── contexts └── MenuContext.tsx ├── next.config.js ├── README.md ├── hooks ├── useToggle.tsx ├── useOnClickOutside.tsx └── useClipboard.tsx ├── ci ├── tsconfig.json ├── changelog.sh └── checkLinks.ts ├── tsconfig.json ├── .gitignore ├── .eslintrc.json ├── .github └── workflows │ ├── changelog.yaml │ └── test.yaml ├── package.json └── tailwind.config.js /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto eol=lf -------------------------------------------------------------------------------- /pages/index.tsx: -------------------------------------------------------------------------------- 1 | export default function Home() { 2 | return
Test
; 3 | } 4 | -------------------------------------------------------------------------------- /stylesheets/styles.css: -------------------------------------------------------------------------------- 1 | abbr[title].no-underline { 2 | text-decoration: none; 3 | } 4 | -------------------------------------------------------------------------------- /components/Footer.tsx: -------------------------------------------------------------------------------- 1 | export default function Footer() { 2 | return null; 3 | // return ; 4 | } 5 | -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | } 7 | -------------------------------------------------------------------------------- /tsconfig.eslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./tsconfig.json", 3 | "include": ["ci", "components", "contexts", "hooks", "pages"], 4 | } -------------------------------------------------------------------------------- /components/mdx/Emphasis.tsx: -------------------------------------------------------------------------------- 1 | export default function Emphasis(props: JSX.IntrinsicElements["em"]) { 2 | return ; 3 | } 4 | -------------------------------------------------------------------------------- /components/mdx/Strong.tsx: -------------------------------------------------------------------------------- 1 | export default function Strong(props: JSX.IntrinsicElements["strong"]) { 2 | return ; 3 | } 4 | -------------------------------------------------------------------------------- /components/mdx/StrikeThrough.tsx: -------------------------------------------------------------------------------- 1 | export default function StrikeThrough(props: JSX.IntrinsicElements["s"]) { 2 | return ; 3 | } 4 | -------------------------------------------------------------------------------- /public/images/available-published.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IanMitchell/hackweek-discord-api-docs/HEAD/public/images/available-published.png -------------------------------------------------------------------------------- /public/images/gift-code-creation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IanMitchell/hackweek-discord-api-docs/HEAD/public/images/gift-code-creation.png -------------------------------------------------------------------------------- /stylesheets/whitney/whitneybold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IanMitchell/hackweek-discord-api-docs/HEAD/stylesheets/whitney/whitneybold.woff -------------------------------------------------------------------------------- /stylesheets/whitney/whitneybook.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IanMitchell/hackweek-discord-api-docs/HEAD/stylesheets/whitney/whitneybook.woff -------------------------------------------------------------------------------- /stylesheets/whitney/whitneylight.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IanMitchell/hackweek-discord-api-docs/HEAD/stylesheets/whitney/whitneylight.woff -------------------------------------------------------------------------------- /components/mdx/HorizontalRule.tsx: -------------------------------------------------------------------------------- 1 | export default function HorizontalRule(props: JSX.IntrinsicElements["hr"]) { 2 | return
; 3 | } 4 | -------------------------------------------------------------------------------- /stylesheets/whitney/whitneymedium.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IanMitchell/hackweek-discord-api-docs/HEAD/stylesheets/whitney/whitneymedium.woff -------------------------------------------------------------------------------- /stylesheets/whitney/whitneysemibold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IanMitchell/hackweek-discord-api-docs/HEAD/stylesheets/whitney/whitneysemibold.woff -------------------------------------------------------------------------------- /pages/interactions/slash-commands.mdx: -------------------------------------------------------------------------------- 1 | # Slash Commands 2 | 3 | This page has been moved to [Application Commands](/interactions/application-commands/) 4 | -------------------------------------------------------------------------------- /stylesheets/whitney/whitneybookitalic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IanMitchell/hackweek-discord-api-docs/HEAD/stylesheets/whitney/whitneybookitalic.woff -------------------------------------------------------------------------------- /stylesheets/whitney/whitneylightitalic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IanMitchell/hackweek-discord-api-docs/HEAD/stylesheets/whitney/whitneylightitalic.woff -------------------------------------------------------------------------------- /stylesheets/whitney/whitneymediumitalic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IanMitchell/hackweek-discord-api-docs/HEAD/stylesheets/whitney/whitneymediumitalic.woff -------------------------------------------------------------------------------- /stylesheets/whitney/WhitneySemiboldItalic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IanMitchell/hackweek-discord-api-docs/HEAD/stylesheets/whitney/WhitneySemiboldItalic.woff -------------------------------------------------------------------------------- /components/mdx/Paragraph.tsx: -------------------------------------------------------------------------------- 1 | export default function Paragraph(props: JSX.IntrinsicElements["p"]) { 2 | return

; 3 | } 4 | -------------------------------------------------------------------------------- /.prettierrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "quoteProps": "consistent", 3 | "endOfLine": "lf", 4 | "printWidth": 120, 5 | "useTabs": true, 6 | "overrides": [{ 7 | "files": "*.mdx", 8 | "options": { 9 | "useTabs": false 10 | } 11 | }] 12 | } 13 | -------------------------------------------------------------------------------- /stylesheets/tailwind.css: -------------------------------------------------------------------------------- 1 | @tailwind base; 2 | @tailwind components; 3 | @tailwind utilities; 4 | 5 | @responsive { 6 | .scroll-pt-16 { 7 | scroll-padding-top: 4rem; 8 | } 9 | 10 | .scroll-pt-0 { 11 | scroll-padding-top: 0; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /next-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | /// 3 | /// 4 | 5 | // NOTE: This file should not be edited 6 | // see https://nextjs.org/docs/basic-features/typescript for more information. 7 | -------------------------------------------------------------------------------- /components/mdx/InlineCode.tsx: -------------------------------------------------------------------------------- 1 | export default function InlineCode(props: JSX.IntrinsicElements["code"]) { 2 | return ( 3 | 7 | ); 8 | } 9 | -------------------------------------------------------------------------------- /contexts/MenuContext.tsx: -------------------------------------------------------------------------------- 1 | import { createContext } from "react"; 2 | 3 | /* eslint-disable @typescript-eslint/no-empty-function */ 4 | 5 | const context = createContext({ 6 | open: false, 7 | setOpen: () => {}, 8 | setClose: () => {}, 9 | }); 10 | export default context; 11 | -------------------------------------------------------------------------------- /stylesheets/youtube.css: -------------------------------------------------------------------------------- 1 | .youtube { 2 | position: relative; 3 | padding-bottom: 56.25%; 4 | height: 0; 5 | } 6 | 7 | .youtube iframe, 8 | .youtube object, 9 | .youtube embed { 10 | position: absolute; 11 | top: 0; 12 | left: 0; 13 | width: 100%; 14 | height: 100%; 15 | } 16 | -------------------------------------------------------------------------------- /next.config.js: -------------------------------------------------------------------------------- 1 | const withMDX = require("@next/mdx")({ 2 | options: { 3 | remarkPlugins: [], 4 | rehypePlugins: [], 5 | }, 6 | }); 7 | 8 | /** @type {import('next').NextConfig} */ 9 | module.exports = withMDX({ 10 | reactStrictMode: true, 11 | basePath: "/docs", 12 | pageExtensions: ["js", "jsx", "ts", "tsx", "md", "mdx"], 13 | }); 14 | -------------------------------------------------------------------------------- /components/icons/CaretFill.tsx: -------------------------------------------------------------------------------- 1 | export default function CaretFill(props: React.SVGProps) { 2 | return ( 3 | 4 | 5 | 6 | ); 7 | } 8 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # discord.dev 2 | 3 | This is a Discord hackweek project. This codebase is owned by Discord, despite being under a personal account. As is the nature of hackweek, not all projects ship - this website is an idea/suggestion, not a planned thing. 4 | 5 | If you're interested in seeing more (we're streaming through hackweek!), join us [on Discord](https://discord.gg/ian) 6 | -------------------------------------------------------------------------------- /components/icons/Check.tsx: -------------------------------------------------------------------------------- 1 | export default function Check(props: React.SVGProps) { 2 | return ( 3 | 4 | 5 | 6 | ); 7 | } 8 | -------------------------------------------------------------------------------- /components/icons/Caret.tsx: -------------------------------------------------------------------------------- 1 | export default function Caret(props: React.SVGProps) { 2 | return ( 3 | 4 | 5 | 6 | ); 7 | } 8 | -------------------------------------------------------------------------------- /components/icons/Chevron.tsx: -------------------------------------------------------------------------------- 1 | export default function Chevron(props: React.SVGProps) { 2 | return ( 3 | 4 | 8 | 9 | ); 10 | } 11 | -------------------------------------------------------------------------------- /pages/menu.tsx: -------------------------------------------------------------------------------- 1 | import Navigation from "../components/Navigation"; 2 | 3 | export default function Menu() { 4 | return ( 5 |

6 |
7 |
8 | 9 |
10 |
11 |
12 | ); 13 | } 14 | -------------------------------------------------------------------------------- /components/YouTubeEmbed.tsx: -------------------------------------------------------------------------------- 1 | export default function YouTubeEmbed({ src }: { src: string }) { 2 | return ( 3 |
4 |