aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/docs/next.config.js
diff options
context:
space:
mode:
Diffstat (limited to 'docs/next.config.js')
-rw-r--r--docs/next.config.js244
1 files changed, 239 insertions, 5 deletions
diff --git a/docs/next.config.js b/docs/next.config.js
index ef28363..eb56c65 100644
--- a/docs/next.config.js
+++ b/docs/next.config.js
@@ -1,6 +1,240 @@
-const withNextra = require('nextra')({
- theme: 'nextra-theme-docs',
- themeConfig: './theme.config.tsx',
-})
+const { withSentryConfig } = require("@sentry/nextjs");
+const withNextra = require("nextra")({
+ theme: "nextra-theme-docs",
+ themeConfig: "./theme.config.js",
+ unstable_flexsearch: true,
+ unstable_staticImage: true,
+});
-module.exports = withNextra()
+const sentryWebpackPluginOptions = {
+ silent: true,
+};
+
+const OLD_TURBOREPO_ROUTES = [
+ "/docs",
+ "/docs/ci/circleci",
+ "/docs/ci/github-actions",
+ "/docs/ci/gitlabci",
+ "/docs/ci/travisci",
+ "/docs/core-concepts/caching",
+ "/docs/core-concepts/remote-caching",
+ "/docs/core-concepts/scopes",
+ "/docs/core-concepts/monorepos/filtering",
+ "/docs/core-concepts/monorepos/running-tasks",
+ "/docs/getting-started/create-new",
+ "/docs/getting-started/existing-monorepo",
+ "/docs/handbook",
+ "/docs/handbook/building-your-app",
+ "/docs/handbook/deploying-with-docker",
+ "/docs/handbook/dev",
+ "/docs/handbook/linting",
+ "/docs/handbook/migrating-to-a-monorepo",
+ "/docs/handbook/package-installation",
+ "/docs/handbook/publishing-packages",
+ "/docs/handbook/sharing-code",
+ "/docs/handbook/testing",
+ "/docs/handbook/troubleshooting",
+ "/docs/handbook/what-is-a-monorepo",
+ "/docs/handbook/workspaces",
+ "/docs/handbook/linting/eslint",
+ "/docs/handbook/linting/typescript",
+ "/docs/handbook/publishing-packages/bundling",
+ "/docs/handbook/publishing-packages/versioning-and-publishing",
+ "/docs/handbook/sharing-code/internal-packages",
+ "/docs/reference/codemods",
+ "/docs/reference/command-line-reference",
+ "/docs/reference/configuration",
+ "/docs/acknowledgements",
+ "/docs/ci",
+ "/docs/faq",
+ "/docs/troubleshooting",
+ "/docs/upgrading-to-v1",
+];
+
+const nextConfig = withNextra({
+ sentry: {
+ autoInstrumentServerFunctions: false,
+ hideSourceMaps: true,
+ },
+ reactStrictMode: true,
+ experimental: {
+ legacyBrowsers: false,
+ },
+ webpack: (config, { webpack }) => {
+ config.plugins.push(
+ new webpack.DefinePlugin({
+ __SENTRY_DEBUG__: false,
+ __SENTRY_TRACING__: false,
+ })
+ );
+
+ // return the modified config
+ return config;
+ },
+ rewrites() {
+ return {
+ beforeFiles: [
+ {
+ source: "/sitemap.xml",
+ destination:
+ "https://crawled-sitemap.vercel.sh/turbobuild-sitemap.xml",
+ },
+ ],
+ };
+ },
+ async redirects() {
+ return [
+ ...OLD_TURBOREPO_ROUTES.map((route) => ({
+ source: route,
+ destination: `/repo${route}`,
+ permanent: true,
+ })),
+ {
+ source: "/docs/getting-started",
+ destination: "/repo/docs",
+ permanent: true,
+ },
+ {
+ source: "/usage",
+ destination: "/repo/docs/reference/command-line-reference",
+ permanent: true,
+ },
+ {
+ source: "/docs/core-concepts/running-tasks",
+ destination: "/repo/docs/core-concepts/monorepos/running-tasks",
+ permanent: true,
+ },
+ {
+ source: "/docs/core-concepts/why-turborepo",
+ destination: "/repo/docs/core-concepts/monorepos",
+ permanent: true,
+ },
+ {
+ source: "/docs/core-concepts/filtering",
+ destination: "/repo/docs/core-concepts/monorepos/filtering",
+ permanent: true,
+ },
+ {
+ source: "/docs/guides/workspaces",
+ destination: "/repo/docs/handbook/workspaces",
+ permanent: true,
+ },
+ {
+ source: "/docs/core-concepts/workspaces",
+ destination: "/repo/docs/handbook/workspaces",
+ permanent: true,
+ },
+ {
+ source: "/docs/core-concepts/pipelines",
+ destination: "/repo/docs/core-concepts/monorepos/running-tasks",
+ permanent: true,
+ },
+ {
+ source: "/docs/guides/migrate-from-lerna",
+ destination: "/repo/docs/handbook/migrating-to-a-monorepo",
+ permanent: true,
+ },
+ {
+ source: "/discord{/}?",
+ permanent: true,
+ destination: "https://discord.gg/sSzyjxvbf5",
+ },
+ {
+ source: "/docs/changelog",
+ permanent: true,
+ destination: "https://github.com/vercel/turbo/releases",
+ },
+ {
+ source: "/docs/guides/complimentary-tools",
+ permanent: true,
+ destination: "/repo/docs/handbook",
+ },
+ {
+ source: "/docs/guides/monorepo-tools",
+ permanent: true,
+ destination: "/repo/docs/handbook",
+ },
+ {
+ source: "/docs/glossary",
+ permanent: true,
+ destination: "/repo/docs/handbook",
+ },
+ {
+ source: "/docs/guides/continuous-integration",
+ permanent: true,
+ destination: "/repo/docs/ci",
+ },
+ {
+ source: "/repo/docs/handbook/prisma",
+ permanent: true,
+ destination: "/repo/docs/handbook/tools/prisma",
+ },
+ {
+ source: "/pack/docs/comparisons/turbopack-vs-vite",
+ permanent: true,
+ destination: "/pack/docs/comparisons/vite",
+ },
+ {
+ source: "/pack/docs/comparisons/turbopack-vs-webpack",
+ permanent: true,
+ destination: "/pack/docs/comparisons/webpack",
+ },
+ {
+ // Accidentally created, eventually removable. See below.
+ source: "/repo/docs/core-concepts/running-tasks",
+ destination: "/repo/docs/core-concepts/monorepos/running-tasks",
+ permanent: true,
+ },
+ {
+ // Accidentally created, eventually removable. See below.
+ source: "/repo/docs/core-concepts/why-turborepo",
+ destination: "/repo/docs/core-concepts/monorepos",
+ permanent: true,
+ },
+ {
+ // Accidentally created, eventually removable. See below.
+ source: "/repo/docs/core-concepts/filtering",
+ destination: "/repo/docs/core-concepts/monorepos/filtering",
+ permanent: true,
+ },
+ {
+ // Accidentally created, eventually removable. See below.
+ source: "/repo/docs/core-concepts/pipelines",
+ destination: "/repo/docs/core-concepts/monorepos/running-tasks",
+ permanent: true,
+ },
+ {
+ // This rule accidentally created a bunch of URLs.
+ //
+ // They've _never_ resolved, so _eventually_ we should be able to remove the
+ // redirects we added above to fix them.
+ source: "/docs/features/:path*",
+ permanent: true,
+ destination: "/repo/docs/core-concepts/:path*",
+ },
+ {
+ // Accidentally created, eventually removable. See below.
+ source: "/repo/docs/getting-started",
+ destination: "/repo/docs",
+ permanent: true,
+ },
+ {
+ // Accidentally created, eventually removable. See below.
+ source: "/repo/docs/guides/workspaces",
+ destination: "/repo/docs/handbook/workspaces",
+ permanent: true,
+ },
+ {
+ // This rule accidentally created a bunch of URLs.
+ //
+ // They've _never_ resolved, so _eventually_ we should be able to remove the
+ // redirects we added above to fix them.
+ source: "/docs/:path*",
+ permanent: true,
+ destination: "/repo/docs/:path*",
+ },
+ ];
+ },
+});
+
+module.exports = withSentryConfig(nextConfig, sentryWebpackPluginOptions);