Files
nym/documentation/docs/theme.config.tsx
T
windy-ux 07435ce3b2 Fix/web 615 seo setup (#5257)
* + add header into Packet Mixing docs

* + add head changes for testing

* / updated version of metatags in theme.config

* + add env file

* / theme.config to use NEXT_PUBLIC_SITE_URL from env file

* @ Fix broken link in theme.config

* - remove favicon code

* + add desription for intro pages
2024-12-13 13:09:49 +00:00

77 lines
2.7 KiB
TypeScript

import React from "react";
import { DocsThemeConfig, useConfig } from "nextra-theme-docs";
import { Footer } from "./components/footer";
import { Matrix } from "./components/matrix-link";
import { useRouter } from "next/router";
const config: DocsThemeConfig = {
head: function useHead() {
const config = useConfig()
const { route } = useRouter()
const url = process.env.NEXT_PUBLIC_SITE_URL
const image = url + '/nym_logo.jpg'
const description =
config.frontMatter.description ||
'Nym is a privacy platform. It provides strong network-level privacy against sophisticated end-to-end attackers, and anonymous access control using blinded, re-randomizable, decentralized credentials.'
const title = config.title + (route === '/' ? '' : ' - Nym docs')
return (
<>
<title>{title}</title>
<meta name="author" content="Nym" />
<link rel="canonical" href={url + route} />
<meta property="og:title" content={title} />
<meta property="og:site_name" content="Nym docs"></meta>
<meta name="description" content={description} />
<meta property="og:description" content={description} />
<meta property="og:image" content={image} />
<meta property="og:type" content="website" />
<meta property="og:url" content={url + route}></meta>
<meta property="twitter:title" content={title}></meta>
<meta property="twitter:description" content={description}></meta>
<meta name="twitter:card" content="summary_large_image" />
<meta property="twitter:image" content={image}></meta>
<meta name="twitter:site" content="@nymproject" />
<meta name="twitter:site:domain" content={url} />
<meta name="twitter:url" content={url + route} />
<meta name="apple-mobile-web-app-title" content="Nym docs" />
</>
)
},
logo: <span>Nym Docs</span>,
project: {
link: "https://github.com/nymtech/nym",
},
docsRepositoryBase:
"https://github.com/nymtech/nym/tree/develop/documentation/docs/",
footer: {
text: Footer,
},
darkMode: true,
sidebar: {
defaultMenuCollapseLevel: 1,
autoCollapse: true,
},
navbar: {
extraContent: <Matrix />,
},
toc: {
float: false, // TODO would be nice to set this to false so the TOC is in the left sidebar but this doesn't seem to work with pages that are also the top of directories: fix
// if we do this then we also have to uncomment the editLink and feedback objects below
component: null, // try remove right-hand column
},
editLink: {
component: null, // remove element
},
feedback: {
content: null, // remove element
},
// gitTimestamp: TODO
};
export default config;