mirror of
https://github.com/meshtastic/meshtastic.git
synced 2024-12-26 22:19:46 -08:00
159 lines
4.4 KiB
JavaScript
159 lines
4.4 KiB
JavaScript
// @ts-check
|
|
|
|
require('dotenv').config();
|
|
|
|
/** @type {import('@docusaurus/types').Config} */
|
|
const config = {
|
|
title: 'Meshtastic',
|
|
tagline: 'Open Source hiking, pilot, skiing and secure GPS mesh communicator',
|
|
url: 'https://meshtastic.org',
|
|
baseUrl: '/',
|
|
onBrokenLinks: 'throw',
|
|
onBrokenMarkdownLinks: 'warn',
|
|
favicon: 'design/web/favicon.ico',
|
|
organizationName: 'meshtastic',
|
|
projectName: 'meshtastic',
|
|
ssrTemplate: `<!DOCTYPE html>
|
|
<html <%~ it.htmlAttributes %>>
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<meta name="generator" content="Docusaurus v<%= it.version %>">
|
|
<% if (it.noIndex) { %>
|
|
<meta name="robots" content="noindex, nofollow" />
|
|
<% } %>
|
|
<script type="application/ld+json">
|
|
{
|
|
"@context": "https://schema.org",
|
|
"@type": "Organization",
|
|
"url": "https://meshtastic.org",
|
|
"logo": "https://meshtastic.org/design/logo/logo.svg"
|
|
}
|
|
</script>
|
|
<%~ it.headTags %>
|
|
<% it.metaAttributes.forEach((metaAttribute) => { %>
|
|
<%~ metaAttribute %>
|
|
<% }); %>
|
|
<% it.stylesheets.forEach((stylesheet) => { %>
|
|
<link rel="stylesheet" href="<%= it.baseUrl %><%= stylesheet %>" />
|
|
<% }); %>
|
|
<% it.scripts.forEach((script) => { %>
|
|
<link rel="preload" href="<%= it.baseUrl %><%= script %>" as="script">
|
|
<% }); %>
|
|
</head>
|
|
<body <%~ it.bodyAttributes %>>
|
|
<%~ it.preBodyTags %>
|
|
<div id="__docusaurus">
|
|
<%~ it.appHtml %>
|
|
</div>
|
|
<% it.scripts.forEach((script) => { %>
|
|
<script src="<%= it.baseUrl %><%= script %>"></script>
|
|
<% }); %>
|
|
<%~ it.postBodyTags %>
|
|
</body>
|
|
</html>`,
|
|
themeConfig: /** @type {import('@docusaurus/preset-classic').ThemeConfig} */ {
|
|
colorMode: {
|
|
respectPrefersColorScheme: true,
|
|
},
|
|
autoCollapseSidebarCategories: true,
|
|
navbar: {
|
|
title: 'Meshtastic',
|
|
hideOnScroll: true,
|
|
logo: {
|
|
alt: 'Meshtastic Logo',
|
|
src: 'design/logo/svg/Mesh_Logo_Black.svg',
|
|
srcDark: 'design/logo/svg/Mesh_Logo_White.svg',
|
|
},
|
|
|
|
items: [
|
|
{
|
|
label: 'Docs',
|
|
items: [
|
|
{
|
|
label: 'Getting Started',
|
|
to: 'docs/getting-started',
|
|
},
|
|
{
|
|
label: 'Configuration',
|
|
to: 'docs/settings',
|
|
},
|
|
{
|
|
label: 'Hardware',
|
|
to: 'docs/hardware',
|
|
},
|
|
{
|
|
label: 'Software',
|
|
to: 'docs/software',
|
|
},
|
|
],
|
|
},
|
|
{
|
|
label: 'Developers',
|
|
to: 'docs/developers',
|
|
},
|
|
{
|
|
label: 'Other',
|
|
items: [
|
|
{
|
|
label: 'Downloads',
|
|
to: 'downloads',
|
|
activeBasePath: 'downloads',
|
|
},
|
|
{
|
|
label: 'Showcase',
|
|
to: 'showcase',
|
|
activeBasePath: 'showcase',
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
footer: {
|
|
copyright: `<a href="https://vercel.com/?utm_source=meshtastic&utm_campaign=oss">Powered by ▲ Vercel</a> | Meshtastic® is a registered trademark of Geeksville Industries LLC. | <a href="/docs/legal">Legal Information</a>.`,
|
|
},
|
|
algolia: {
|
|
appId: 'IG2GQB8L3V',
|
|
apiKey: '2e4348812173ec7ea6f7879c7032bb21',
|
|
indexName: 'meshtastic',
|
|
contextualSearch: false,
|
|
searchPagePath: 'search',
|
|
},
|
|
},
|
|
plugins: [
|
|
() => {
|
|
return {
|
|
name: 'docusaurus-tailwindcss',
|
|
configurePostCss(postcssOptions) {
|
|
// Appends TailwindCSS and AutoPrefixer.
|
|
postcssOptions.plugins.push(require('tailwindcss'));
|
|
postcssOptions.plugins.push(require('autoprefixer'));
|
|
return postcssOptions;
|
|
},
|
|
};
|
|
},
|
|
],
|
|
presets: [
|
|
[
|
|
'@docusaurus/preset-classic',
|
|
/** @type {import('@docusaurus/preset-classic').Options} */
|
|
{
|
|
docs: {
|
|
sidebarPath: require.resolve('./sidebars.js'),
|
|
editUrl: 'https://github.com/meshtastic/meshtastic/edit/master/',
|
|
breadcrumbs: false,
|
|
showLastUpdateAuthor: true,
|
|
},
|
|
theme: {
|
|
customCss: require.resolve('./src/css/custom.css'),
|
|
},
|
|
},
|
|
],
|
|
],
|
|
customFields: {
|
|
API_URL: process.env.API_URL,
|
|
},
|
|
};
|
|
|
|
module.exports = config;
|