mirror of
https://github.com/wailsapp/wails.git
synced 2026-03-14 14:45:49 +01:00
* fix: website/package.json to reduce vulnerabilities The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-TRIM-1017038 - https://snyk.io/vuln/SNYK-JS-AXIOS-6032459 - https://snyk.io/vuln/SNYK-JS-WEBPACKDEVSERVER-10300775 - https://snyk.io/vuln/SNYK-JS-AXIOS-12613773 - https://snyk.io/vuln/SNYK-JS-AXIOS-9292519 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-WEBPACKDEVSERVER-10300777 - https://snyk.io/vuln/SNYK-JS-AXIOS-6124857 - https://snyk.io/vuln/SNYK-JS-AXIOS-9403194 - https://snyk.io/vuln/SNYK-JS-GOT-2932019 - https://snyk.io/vuln/SNYK-JS-SIRV-12558119 * Upgrade Docusaurus to v3.9.0 and fix compatibility issues This commit upgrades Docusaurus from v2.4.3 to v3.9.0 to resolve the security vulnerabilities identified by Snyk while ensuring the website builds and runs correctly. Changes: - Upgraded React to v18 (required by Docusaurus v3) - Updated @mdx-js/react to v3 (required by Docusaurus v3) - Updated prism-react-renderer to v2 and modernized theme imports - Removed custom webpack config (incompatible with v3) - Converted Carousel import to ES6 syntax - Fixed MDX syntax errors in French translations (removed Pandoc footnote syntax) Result: Build succeeds for all 7 locales with 0 vulnerabilities. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * Fix Cloudflare build: upgrade Node version requirement Cloudflare was using Node 18.14.0 which lacks URL.canParse (added in 18.17.0). Docusaurus v3 and its dependencies require Node 20+. Changes: - Added .node-version file to specify Node 20.18.0 - Updated package.json engines to require Node >=20.0.0 - Added packageManager field hinting Bun usage 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * Remove incompatible packageManager field 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * Remove .node-version to allow Bun-only builds Cloudflare will use Bun directly without Node.js installation. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * Remove engines field to prevent Node auto-detection Cloudflare was auto-installing Node 18.14.0 based on engines field. Remove it to allow Bun-only builds via dashboard configuration. Configure in Cloudflare dashboard: - Build command: bun run build - Install command: bun install - Environment variable: NODE_VERSION=20.18.0 (if needed) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * Fix Docusaurus v4 deprecation warning Migrated onBrokenMarkdownLinks from root config to markdown.hooks as required by Docusaurus v3.9+ (deprecated in v4). Old: siteConfig.onBrokenMarkdownLinks New: siteConfig.markdown.hooks.onBrokenMarkdownLinks 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * Fix MDX syntax errors in remaining French translation files Fixed v2.11.0 and v2.8.1 French translations that had invalid Pandoc footnote syntax {.footnote-backref} incompatible with MDX v3. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> --------- Co-authored-by: snyk-bot <snyk-bot@snyk.io> Co-authored-by: Claude <noreply@anthropic.com>
260 lines
7 KiB
JavaScript
260 lines
7 KiB
JavaScript
// @ts-check
|
|
// Note: type annotations allow type checking and IDEs autocompletion
|
|
|
|
const { themes } = require("prism-react-renderer");
|
|
const lightCodeTheme = themes.github;
|
|
const darkCodeTheme = themes.dracula;
|
|
|
|
const { getTranslationProgress } = require("./src/api/crowdin.js");
|
|
|
|
module.exports = async function configCreatorAsync() {
|
|
const translationProgress = await getTranslationProgress();
|
|
return {
|
|
title: "Wails",
|
|
tagline: "",
|
|
url: "https://wails.io",
|
|
baseUrl: "/",
|
|
onBrokenLinks: "warn",
|
|
favicon: "img/favicon.ico",
|
|
organizationName: "wailsapp",
|
|
projectName: "wails",
|
|
|
|
markdown: {
|
|
hooks: {
|
|
onBrokenMarkdownLinks: "warn",
|
|
},
|
|
},
|
|
|
|
i18n: {
|
|
defaultLocale: "en",
|
|
locales: ["en", "zh-Hans", "ja", "ru", "ko", "fr", "pt"],
|
|
localeConfigs: {
|
|
en: {
|
|
label: "English",
|
|
direction: "ltr",
|
|
htmlLang: "en-US",
|
|
},
|
|
"zh-Hans": {
|
|
label: `简体中文 (${translationProgress["zh-CN"]}%)`,
|
|
direction: "ltr",
|
|
htmlLang: "zh-Hans",
|
|
},
|
|
ja: {
|
|
label: `日本語 (${translationProgress["ja"]}%)`,
|
|
direction: "ltr",
|
|
htmlLang: "ja-JP",
|
|
},
|
|
ru: {
|
|
label: `Русский (${translationProgress["ru"]}%)`,
|
|
direction: "ltr",
|
|
htmlLang: "ru-RU",
|
|
},
|
|
ko: {
|
|
label: `한국어 (${translationProgress["ko"]}%)`,
|
|
direction: "ltr",
|
|
htmlLang: "ko-KR",
|
|
},
|
|
fr: {
|
|
label: `Français (${translationProgress["fr"]}%)`,
|
|
direction: "ltr",
|
|
htmlLang: "fr",
|
|
},
|
|
pt: {
|
|
label: `Português (${translationProgress["pt-PT"]}%)`,
|
|
direction: "ltr",
|
|
htmlLang: "pt-PT",
|
|
},
|
|
},
|
|
},
|
|
plugins: [],
|
|
presets: [
|
|
[
|
|
"classic",
|
|
/** @type {import('@docusaurus/preset-classic').Options} */
|
|
({
|
|
docs: {
|
|
sidebarPath: require.resolve("./sidebars.js"),
|
|
// Please change this to your repo.
|
|
editUrl: "https://github.com/wailsapp/wails/edit/master/website",
|
|
},
|
|
blog: {
|
|
showReadingTime: true,
|
|
// Please change this to your repo.
|
|
editUrl:
|
|
"https://github.com/wailsapp/wails/edit/master/website/blog",
|
|
},
|
|
theme: {
|
|
customCss: [
|
|
require.resolve("./src/css/custom.css"),
|
|
require.resolve("./src/css/carousel.css"),
|
|
],
|
|
},
|
|
}),
|
|
],
|
|
],
|
|
|
|
themeConfig:
|
|
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
|
|
({
|
|
navbar: {
|
|
title: "",
|
|
logo: {
|
|
alt: "Wails Logo",
|
|
src: "img/wails-logo-horizontal.svg",
|
|
srcDark: "img/wails-logo-horizontal-dark.svg",
|
|
},
|
|
items: [
|
|
{
|
|
type: "docsVersionDropdown", //version
|
|
position: "left",
|
|
dropdownActiveClassDisabled: true,
|
|
dropdownItemsAfter: [],
|
|
},
|
|
{
|
|
to: "https://github.com/sponsors/leaanthony",
|
|
label: "Sponsor",
|
|
position: "left",
|
|
},
|
|
{
|
|
type: "doc",
|
|
docId: "introduction",
|
|
position: "right",
|
|
label: "Docs",
|
|
},
|
|
{
|
|
to: "/blog",
|
|
label: "Blog",
|
|
position: "right",
|
|
},
|
|
{
|
|
type: "dropdown",
|
|
label: "About",
|
|
position: "right",
|
|
items: [
|
|
{
|
|
to: "/faq",
|
|
label: "FAQ",
|
|
},
|
|
{
|
|
to: "/changelog",
|
|
label: "Changelog",
|
|
},
|
|
{
|
|
to: "/community-guide",
|
|
label: "Community Guide",
|
|
},
|
|
{
|
|
to: "/coc",
|
|
label: "Code of Conduct",
|
|
},
|
|
{
|
|
to: "/credits",
|
|
label: "Credits",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
type: "localeDropdown",
|
|
position: "right",
|
|
dropdownItemsAfter: [
|
|
{
|
|
to: "/community-guide#documenting",
|
|
label: "Help Us Translate ❤",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
href: "https://github.com/wailsapp/wails",
|
|
label: "GitHub",
|
|
position: "right",
|
|
},
|
|
{
|
|
type: "search",
|
|
position: "right",
|
|
},
|
|
],
|
|
},
|
|
footer: {
|
|
style: "dark",
|
|
logo: {
|
|
alt: "Wails Logo",
|
|
src: "img/wails-logo-horizontal.svg",
|
|
srcDark: "img/wails-logo-horizontal-dark.svg",
|
|
href: "https://github.com/wailsapp/wails",
|
|
width: 160,
|
|
height: 50,
|
|
},
|
|
links: [
|
|
{
|
|
title: "Docs",
|
|
items: [
|
|
{
|
|
label: "Introduction",
|
|
to: "/docs/introduction",
|
|
},
|
|
{
|
|
label: "Getting Started",
|
|
to: "/docs/gettingstarted/installation",
|
|
},
|
|
{
|
|
label: "Changelog",
|
|
to: "/changelog",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
title: "Community",
|
|
items: [
|
|
{
|
|
label: "Github",
|
|
href: "https://github.com/wailsapp/wails",
|
|
},
|
|
{
|
|
label: "Twitter",
|
|
href: "https://twitter.com/wailsapp",
|
|
},
|
|
{
|
|
label: "Discord",
|
|
href: "https://discord.gg/JDdSxwjhGf",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
title: "More",
|
|
items: [
|
|
{
|
|
label: "Blog",
|
|
to: "/blog",
|
|
},
|
|
{
|
|
label: "Awesome",
|
|
href: "https://github.com/wailsapp/awesome-wails",
|
|
},
|
|
],
|
|
},
|
|
],
|
|
copyright: `Copyright © ${new Date().getFullYear()} Lea Anthony`,
|
|
},
|
|
tableOfContents: {
|
|
minHeadingLevel: 2,
|
|
maxHeadingLevel: 5,
|
|
},
|
|
prism: {
|
|
theme: lightCodeTheme,
|
|
darkTheme: darkCodeTheme,
|
|
additionalLanguages: ["json5"],
|
|
},
|
|
colorMode: {
|
|
defaultMode: "light",
|
|
disableSwitch: false,
|
|
respectPrefersColorScheme: true,
|
|
},
|
|
algolia: {
|
|
appId: "AWTCNFZ4FF",
|
|
apiKey: "a6c0adbe611ee2535f3da5e8fd7b2200",
|
|
indexName: "wails",
|
|
contextualSearch: true,
|
|
},
|
|
}),
|
|
};
|
|
};
|