Skip to content
Merged
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
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 52 additions & 0 deletions docs/app/[[...mdxPath]]/page.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
import { generateStaticParamsFor, importPage } from 'nextra/pages'
import { useMDXComponents as getMDXComponents } from '../../mdx-components'

export const generateStaticParams = generateStaticParamsFor('mdxPath')

function pathnameFromParams(mdxPath) {
if (!mdxPath?.length) return '/'
return `/${mdxPath.join('/')}`
}

export async function generateMetadata(props) {
const params = await props.params
const { metadata } = await importPage(params.mdxPath)
const title = metadata.title
const description = metadata.description
const ogImage = metadata.ogImage ?? '/og-image.png'
const pathname = pathnameFromParams(params.mdxPath)
const pageTitle = title ? `${title} | Edge Runtime` : 'Edge Runtime'

return {
title: pageTitle,
description,
openGraph: {
title,
description,
url: `https://edge-runtime.vercel.app${pathname}`,
siteName: 'Edge Runtime',
images: [{ url: ogImage }],
type: 'website',
},
twitter: {
card: 'summary_large_image',
},
}
}

export default async function Page(props) {
const params = await props.params
const {
default: MDXContent,
toc,
metadata,
sourceCode,
} = await importPage(params.mdxPath)
const Wrapper = getMDXComponents().wrapper

return (
<Wrapper toc={toc} metadata={metadata} sourceCode={sourceCode}>
<MDXContent {...props} params={params} />
</Wrapper>
)
}
65 changes: 65 additions & 0 deletions docs/app/layout.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
import { Footer, Layout, Navbar } from 'nextra-theme-docs'
import { Head } from 'nextra/components'
import { getPageMap } from 'nextra/page-map'
import { Inter } from 'next/font/google'
import '../styles.css'

const inter = Inter({ subsets: ['latin'], display: 'optional' })

export const metadata = {
metadataBase: new URL('https://edge-runtime.vercel.app'),
}

export default async function RootLayout({ children }) {
const pageMap = await getPageMap()

return (
<html
lang='en'
dir='ltr'
suppressHydrationWarning
className={inter.className}
>
<Head>
<meta name='viewport' content='width=device-width, initial-scale=1.0' />
<link rel='icon' href='/logo.svg' type='image/svg+xml' />
</Head>
<body>
<Layout
navbar={
<Navbar
projectLink='https://github.com/vercel/edge-runtime'
logo={
<>
<img
width={24}
height={24}
src='/logo.svg'
alt='Edge Runtime logo'
className='dark:hidden'
/>
<img
width={24}
height={24}
src='/logo-dark.svg'
alt=''
className='hidden dark:block'
/>
<span className='w-full font-bold pl-2'>Edge Runtime</span>
</>
}
/>
}
pageMap={pageMap}
docsRepositoryBase='https://github.com/vercel/edge-runtime/blob/main/docs'
editLink='Edit this page on GitHub'
feedback={{ content: 'Question? Give us feedback →' }}
toc={{ float: true }}
footer={<Footer />}
>
{children}
</Layout>
</body>
</html>
)
}
16 changes: 16 additions & 0 deletions docs/content/_meta.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
export default {
'*': {
theme: {
footer: false,
},
},
index: 'Introduction',
'getting-started': 'Getting Started',
cli: 'Command-line Interface',
features: 'Features',
packages: 'Packages',
changelog: {
title: 'Changelog',
href: 'https://github.com/vercel/edge-runtime/releases',
},
}
File renamed without changes.
6 changes: 6 additions & 0 deletions docs/content/features/_meta.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
export default {
'available-apis': 'Edge Runtime APIs',
polyfills: 'Polyfills',
'typescript-support': 'TypeScript support',
'upgrading-nextjs': 'Upgrading Next.js',
}
File renamed without changes.
File renamed without changes.
File renamed without changes.
13 changes: 13 additions & 0 deletions docs/content/packages/_meta.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
export default {
cookies: '@edge-runtime/cookies',
format: '@edge-runtime/format',
'jest-environment': '@edge-runtime/jest-environment',
'jest-expect': '@edge-runtime/jest-expect',
'node-utils': '@edge-runtime/node-utils',
ponyfill: '@edge-runtime/ponyfill',
primitives: '@edge-runtime/primitives',
runtime: 'edge-runtime',
types: '@edge-runtime/types',
'user-agent': '@edge-runtime/user-agent',
vm: '@edge-runtime/vm',
}
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ This package includes built-in TypeScript support.
## Usage

```ts
import { once } = from 'node:events'
import { once } from 'node:events'
import { createServer } from 'node:http'
import { buildToNodeHandler } from '@edge-runtime/node-utils'

Expand All @@ -27,7 +27,7 @@ const transformToNode = buildToNodeHandler(global, {
const server = await createServer(
// 2. takes an web compliant request handler, that uses Web globals like Request and Response,
// and turn it into a Node.js compliant request handler.
transformToNode(async (req: Request) => new Response(req.body))
transformToNode(async (req: Request) => new Response(req.body)),
)

// 3. start the node.js server
Expand All @@ -37,7 +37,7 @@ await once(server, 'listening')
// 4. invoke the request handler
const response = await fetch(
`http://localhost:${(server.address() as AddressInfo).port}`,
{ method: 'POST', body: 'hello world' }
{ method: 'POST', body: 'hello world' },
)

console.log(await response.text()) // is 'hello world'
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
10 changes: 10 additions & 0 deletions docs/mdx-components.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
import { useMDXComponents as getThemeComponents } from 'nextra-theme-docs'

const themeComponents = getThemeComponents()

export function useMDXComponents(components) {
return {
...themeComponents,
...components,
}
}
9 changes: 0 additions & 9 deletions docs/next.config.js

This file was deleted.

9 changes: 9 additions & 0 deletions docs/next.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import nextra from 'nextra'

const withNextra = nextra({
defaultShowCopyCode: true,
})

export default withNextra({
reactStrictMode: true,
})
11 changes: 5 additions & 6 deletions docs/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,17 @@
"version": "0.0.0",
"dependencies": {
"@heroicons/react": "~2.2.0",
"next": "~15.2.6",
"next-themes": "~0.4.6",
"nextra": "2",
"nextra-theme-docs": "2",
"next": "~15.5.15",
"nextra": "~4.6.1",
"nextra-theme-docs": "~4.6.1",
"react": "18",
"react-dom": "18",
"swr": "~2.3.3"
},
"devDependencies": {
"autoprefixer": "~10.4.21",
"@tailwindcss/postcss": "^4.1.4",
"postcss": "~8.5.3",
"tailwindcss": "3"
"tailwindcss": "^4.1.4"
},
"engines": {
"node": ">=18"
Expand Down
12 changes: 0 additions & 12 deletions docs/pages/_app.mdx

This file was deleted.

32 changes: 0 additions & 32 deletions docs/pages/_document.js

This file was deleted.

17 changes: 0 additions & 17 deletions docs/pages/_meta.json

This file was deleted.

5 changes: 0 additions & 5 deletions docs/pages/features/_meta.json

This file was deleted.

13 changes: 0 additions & 13 deletions docs/pages/packages/_meta.json

This file was deleted.

7 changes: 0 additions & 7 deletions docs/postcss.config.js

This file was deleted.

5 changes: 5 additions & 0 deletions docs/postcss.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
export default {
plugins: {
'@tailwindcss/postcss': {},
},
}
Loading
Loading