Test internationalization
Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
This commit is contained in:
8 files changed
+133
-119
No files matched your search
@@ -26,7 +26,7 @@ const config: Config = {
|
||||
// may want to replace "en" with "zh-Hans".
|
||||
i18n: {
|
||||
defaultLocale: 'en',
|
||||
locales: ['en'],
|
||||
locales: ['en', 'de'],
|
||||
},
|
||||
|
||||
presets: [
|
||||
@@ -102,6 +102,10 @@ const config: Config = {
|
||||
position: 'right',
|
||||
className: 'header-discord-link'
|
||||
},
|
||||
{
|
||||
type: 'localeDropdown',
|
||||
position: 'right',
|
||||
},
|
||||
],
|
||||
},
|
||||
footer: {
|
||||
|
||||
@@ -9,8 +9,8 @@ export const Collapsibles = ({ children }) => {
|
||||
};
|
||||
|
||||
interface CollapsibleProps {
|
||||
title: string;
|
||||
subtitle?: string;
|
||||
title: React.ReactNode;
|
||||
subtitle?: React.ReactNode;
|
||||
inner: React.ReactNode;
|
||||
}
|
||||
|
||||
|
||||
@@ -4,6 +4,7 @@ import styles from './styles.module.css';
|
||||
import Crossplatform0Img from '@site/static/img/site/crossplatform_0.png';
|
||||
import Crossplatform1Img from '@site/static/img/site/crossplatform_1.png';
|
||||
import Crossplatform2Img from '@site/static/img/site/crossplatform_2.png';
|
||||
import Translate from '@docusaurus/Translate';
|
||||
|
||||
type FeatureItem = {
|
||||
title: string;
|
||||
@@ -18,7 +19,7 @@ const FeatureList: FeatureItem[] = [
|
||||
image: Crossplatform2Img,
|
||||
description: (
|
||||
<>
|
||||
Geyser is a program that allows Minecraft: Bedrock Edition clients to join Minecraft: Java Edition servers, allowing for true crossplay between both editions of the game. The ultimate goal of this project is to allow Minecraft: Bedrock Edition users to join Minecraft: Java Edition servers as seamlessly as possible.
|
||||
<Translate>Geyser is a program that allows Minecraft: Bedrock Edition clients to join Minecraft: Java Edition servers, allowing for true crossplay between both editions of the game. The ultimate goal of this project is to allow Minecraft: Bedrock Edition users to join Minecraft: Java Edition servers as seamlessly as possible.</Translate>
|
||||
</>
|
||||
),
|
||||
},
|
||||
@@ -27,7 +28,7 @@ const FeatureList: FeatureItem[] = [
|
||||
image: Crossplatform1Img,
|
||||
description: (
|
||||
<>
|
||||
Geyser acts as a translator which sits between the Bedrock client and the Java server. It takes data from the Bedrock client and translates it into a format the Java server understands and vice versa. Geyser works with any modern Minecraft version and can be installed either as a plugin or ran as a standalone program.
|
||||
<Translate>Geyser acts as a translator which sits between the Bedrock client and the Java server. It takes data from the Bedrock client and translates it into a format the Java server understands and vice versa. Geyser works with any modern Minecraft version and can be installed either as a plugin or ran as a standalone program.</Translate>
|
||||
</>
|
||||
),
|
||||
},
|
||||
@@ -36,9 +37,9 @@ const FeatureList: FeatureItem[] = [
|
||||
image: Crossplatform0Img,
|
||||
description: (
|
||||
<>
|
||||
Geyser can be joined from Bedrock clients on Windows 10/11, iOS, Android, and even consoles (more info here). Geyser works with a wide array of hosting providers, but can also be used as its own standalone proxy to join any Minecraft server!
|
||||
<Translate>Geyser can be joined from Bedrock clients on Windows 10/11, iOS, Android, and even consoles (more info here). Geyser works with a wide array of hosting providers, but can also be used as its own standalone proxy to join any Minecraft server!</Translate>
|
||||
|
||||
If you are a server owner, you can install our Floodgate plugin which allows Xbox Live authenticated Bedrock users to join without a Java Edition account!
|
||||
<Translate>If you are a server owner, you can install our Floodgate plugin which allows Xbox Live authenticated Bedrock users to join without a Java Edition account!</Translate>
|
||||
</>
|
||||
),
|
||||
},
|
||||
|
||||
@@ -7,10 +7,10 @@ import { Grid } from './Grid';
|
||||
|
||||
interface ProjectDownloadProps {
|
||||
projectId: string;
|
||||
description: string;
|
||||
description?: React.ReactNode;
|
||||
setup?: string;
|
||||
downloadsInfo: {
|
||||
[key: string]: string;
|
||||
[key: string]: string | React.ReactNode;
|
||||
};
|
||||
gridColumns?: number;
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ import type { Providers, HostingProvider, ProviderType } from "@site/src/types/p
|
||||
import ReactMarkdown from "react-markdown";
|
||||
import Admonition from '@theme/Admonition';
|
||||
import React, { useState } from 'react';
|
||||
import Translate from "@docusaurus/Translate";
|
||||
|
||||
export const noP = (props: { children: any; }) => {
|
||||
const { children } = props;
|
||||
@@ -66,7 +67,9 @@ export const ProviderSelector = () => {
|
||||
{selectedProvider ? (
|
||||
<ReactMarkdown>{selectedProvider.description}</ReactMarkdown>
|
||||
) : (
|
||||
<p>Select a provider to see specific installation instructions</p>
|
||||
<p>
|
||||
<Translate>Select a provider to see specific installation instructions</Translate>
|
||||
</p>
|
||||
)}
|
||||
</Admonition>
|
||||
</div>
|
||||
|
||||
@@ -1,104 +0,0 @@
|
||||
---
|
||||
title: Download
|
||||
description: Choose which platform to download Geyser or Floodgate for.
|
||||
hide_table_of_contents: true
|
||||
---
|
||||
|
||||
import Admonition from '@theme/Admonition';
|
||||
import Tabs from "@theme/Tabs";
|
||||
import TabItem from "@theme/TabItem";
|
||||
|
||||
import { faTowerCell, faFileZipper } from '@fortawesome/free-solid-svg-icons';
|
||||
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
||||
|
||||
import HeroBanner from '@site/src/components/HeroBanner';
|
||||
import HeroBackground from '@site/static/img/site/split-background.png';
|
||||
|
||||
import PaperSpigot from '@site/docs/geyser/setup/provider/paper-spigot.mdx';
|
||||
|
||||
import PaperSpigotSelf from '@site/docs/geyser/setup/self/paper-spigot.mdx';
|
||||
|
||||
import FloodgatePaperSpigot from '@site/docs/floodgate/setup/paper-spigot.mdx';
|
||||
|
||||
import PlatformIcon from '@site/src/components/PlatformIcon';
|
||||
import PaperSpigotIcon from '@site/static/img/icons/paper.png';
|
||||
import VelocityIcon from '@site/static/img/icons/velocity.png';
|
||||
import WaterfallBungeeCordIcon from '@site/static/img/icons/waterfall.svg';
|
||||
import FabricIcon from '@site/static/img/icons/fabric.png';
|
||||
import NeoForgeIcon from '@site/static/img/icons/neoforge.png';
|
||||
import ViaProxyIcon from '@site/static/img/icons/viaproxy.png';
|
||||
import StandaloneIcon from '@site/static/img/icons/geyser.png';
|
||||
|
||||
import { Columns, Column } from '@site/src/components/Columns';
|
||||
import { ProviderSelector } from '@site/src/components/Provider';
|
||||
import { ProjectDownload } from '@site/src/components/ProjectDownload';
|
||||
import { Collapsibles, Collapsible } from '@site/src/components/Collapsibles';
|
||||
|
||||
<HeroBanner
|
||||
title="Download"
|
||||
subheading="Download the latest versions of our various projects."
|
||||
backgroundImage={HeroBackground}
|
||||
/>
|
||||
|
||||
<Tabs>
|
||||
<TabItem value="geyser" label="Geyser" default>
|
||||
<ProjectDownload
|
||||
projectId="geyser"
|
||||
description="A bridge/proxy allowing you to connect to Minecraft: Java Edition servers with Minecraft: Bedrock Edition."
|
||||
setup="/geyser/setup"
|
||||
downloadsInfo={{
|
||||
bungeecord: <PlatformIcon svg={WaterfallBungeeCordIcon} text="BungeeCord"/>,
|
||||
fabric: <PlatformIcon img={FabricIcon} text="Fabric"/>,
|
||||
neoforge: <PlatformIcon img={NeoForgeIcon} text="NeoForge"/>,
|
||||
spigot: <PlatformIcon img={PaperSpigotIcon} text="Spigot/Paper"/>,
|
||||
standalone: <PlatformIcon img={StandaloneIcon} text="Standalone"/>,
|
||||
velocity: <PlatformIcon img={VelocityIcon} text="Velocity"/>,
|
||||
viaproxy: <PlatformIcon img={ViaProxyIcon} text="ViaProxy"/>,
|
||||
}}
|
||||
/>
|
||||
</TabItem>
|
||||
<TabItem value="floodgate" label="Floodgate">
|
||||
<ProjectDownload
|
||||
projectId="floodgate"
|
||||
description="Hybrid mode plugin to allow for connections from Geyser to join online mode servers."
|
||||
setup="/floodgate/setup"
|
||||
downloadsInfo={{
|
||||
bungee: <PlatformIcon svg={WaterfallBungeeCordIcon} text="BungeeCord"/>,
|
||||
spigot: <PlatformIcon img={PaperSpigotIcon} text="Spigot/Paper"/>,
|
||||
velocity: <PlatformIcon img={VelocityIcon} text="Velocity"/>,
|
||||
}}
|
||||
/>
|
||||
</TabItem>
|
||||
<TabItem value="other-projects" label="Other Projects">
|
||||
<Collapsibles>
|
||||
<Collapsible
|
||||
title='GeyserConnect'
|
||||
subtitle='A plugin to allow for Geyser players to connect to your server without needing to use a proxy.'
|
||||
inner={
|
||||
<ProjectDownload
|
||||
projectId="geyserconnect"
|
||||
setup='/other/geyserconnect'
|
||||
downloadsInfo={{
|
||||
geyserconnect: <><FontAwesomeIcon icon={faTowerCell}/> GeyserConnect</>,
|
||||
}}
|
||||
gridColumns={1}
|
||||
/>
|
||||
}
|
||||
/>
|
||||
<Collapsible
|
||||
title='GeyserOptionalPack'
|
||||
subtitle='An optional Bedrock resource pack to extend Geyser functionality.'
|
||||
inner={
|
||||
<ProjectDownload
|
||||
projectId="geyseroptionalpack"
|
||||
setup='/other/geyseroptionalpack'
|
||||
downloadsInfo={{
|
||||
geyseroptionalpack: <><FontAwesomeIcon icon={faFileZipper}/> GeyserOptionalPack</>,
|
||||
}}
|
||||
gridColumns={1}
|
||||
/>
|
||||
}
|
||||
/>
|
||||
</Collapsibles>
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
@@ -0,0 +1,110 @@
|
||||
import React from 'react';
|
||||
import Tabs from "@theme/Tabs";
|
||||
import TabItem from "@theme/TabItem";
|
||||
import { faTowerCell, faFileZipper } from '@fortawesome/free-solid-svg-icons';
|
||||
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
||||
import HeroBanner from '@site/src/components/HeroBanner';
|
||||
import HeroBackground from '@site/static/img/site/split-background.png';
|
||||
import PaperSpigotIcon from '@site/static/img/icons/paper.png';
|
||||
import VelocityIcon from '@site/static/img/icons/velocity.png';
|
||||
import WaterfallBungeeCordIcon from '@site/static/img/icons/waterfall.svg';
|
||||
import FabricIcon from '@site/static/img/icons/fabric.png';
|
||||
import NeoForgeIcon from '@site/static/img/icons/neoforge.png';
|
||||
import ViaProxyIcon from '@site/static/img/icons/viaproxy.png';
|
||||
import StandaloneIcon from '@site/static/img/icons/geyser.png';
|
||||
import PlatformIcon from '@site/src/components/PlatformIcon';
|
||||
import { ProjectDownload } from '@site/src/components/ProjectDownload';
|
||||
import { Collapsibles, Collapsible } from '@site/src/components/Collapsibles';
|
||||
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
|
||||
import Layout from '@theme/Layout';
|
||||
import Translate from '@docusaurus/Translate';
|
||||
|
||||
const DownloadPage: React.FC = () => (
|
||||
<>
|
||||
<HeroBanner
|
||||
title="Download"
|
||||
subheading="Download the latest versions of our various projects."
|
||||
backgroundImage={HeroBackground}
|
||||
/>
|
||||
|
||||
<Tabs>
|
||||
<TabItem value="geyser" label="Geyser" default>
|
||||
<ProjectDownload
|
||||
projectId="geyser"
|
||||
description={<Translate>A bridge/proxy allowing you to connect to Minecraft: Java Edition servers with Minecraft: Bedrock Edition.</Translate>}
|
||||
setup="/geyser/setup"
|
||||
downloadsInfo={{
|
||||
bungeecord: <PlatformIcon svg={WaterfallBungeeCordIcon} text="BungeeCord" />,
|
||||
fabric: <PlatformIcon img={FabricIcon} text="Fabric" />,
|
||||
neoforge: <PlatformIcon img={NeoForgeIcon} text="NeoForge" />,
|
||||
spigot: <PlatformIcon img={PaperSpigotIcon} text="Spigot/Paper" />,
|
||||
standalone: <PlatformIcon img={StandaloneIcon} text="Standalone" />,
|
||||
velocity: <PlatformIcon img={VelocityIcon} text="Velocity" />,
|
||||
viaproxy: <PlatformIcon img={ViaProxyIcon} text="ViaProxy" />,
|
||||
}}
|
||||
/>
|
||||
</TabItem>
|
||||
<TabItem value="floodgate" label="Floodgate">
|
||||
<ProjectDownload
|
||||
projectId="floodgate"
|
||||
description={<Translate>Hybrid mode plugin to allow for connections from Geyser to join online mode servers.</Translate>}
|
||||
setup="/floodgate/setup"
|
||||
downloadsInfo={{
|
||||
bungee: <PlatformIcon svg={WaterfallBungeeCordIcon} text="BungeeCord" />,
|
||||
spigot: <PlatformIcon img={PaperSpigotIcon} text="Spigot/Paper" />,
|
||||
velocity: <PlatformIcon img={VelocityIcon} text="Velocity" />,
|
||||
}}
|
||||
/>
|
||||
</TabItem>
|
||||
<TabItem value="other-projects" label="Other Projects">
|
||||
<Collapsibles>
|
||||
<Collapsible
|
||||
title='GeyserConnect'
|
||||
subtitle={<Translate>A plugin to allow for Geyser players to connect to your server without needing to use a proxy.</Translate>}
|
||||
inner={
|
||||
<ProjectDownload
|
||||
projectId="geyserconnect"
|
||||
setup='/other/geyserconnect'
|
||||
downloadsInfo={{
|
||||
geyserconnect: <><FontAwesomeIcon icon={faTowerCell} /> GeyserConnect</>,
|
||||
}}
|
||||
gridColumns={1}
|
||||
/>
|
||||
}
|
||||
/>
|
||||
<Collapsible
|
||||
title='GeyserOptionalPack'
|
||||
subtitle={<Translate>An optional Bedrock resource pack to extend Geyser functionality.</Translate>}
|
||||
inner={
|
||||
<ProjectDownload
|
||||
projectId="geyseroptionalpack"
|
||||
setup='/other/geyseroptionalpack'
|
||||
downloadsInfo={{
|
||||
geyseroptionalpack: <><FontAwesomeIcon icon={faFileZipper} /> GeyserOptionalPack</>,
|
||||
}}
|
||||
gridColumns={1}
|
||||
/>
|
||||
}
|
||||
/>
|
||||
</Collapsibles>
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
</>
|
||||
);
|
||||
|
||||
export default function Download(): JSX.Element {
|
||||
const { siteConfig } = useDocusaurusContext();
|
||||
return (
|
||||
<Layout
|
||||
title={`Download from ${siteConfig.title}`}
|
||||
description="Download the latest versions of our various projects."
|
||||
>
|
||||
<main>
|
||||
<div className="container container--fluid margin-vert--lg">
|
||||
<DownloadPage />
|
||||
</div>
|
||||
</main>
|
||||
</Layout>
|
||||
)
|
||||
}
|
||||
|
||||
+5
-5
@@ -6,10 +6,9 @@ import Heading from '@theme/Heading';
|
||||
import HeroImage from '@site/static/img/site/geyser.png';
|
||||
|
||||
import styles from './index.module.css';
|
||||
import Translate from '@docusaurus/Translate';
|
||||
|
||||
function HomepageHeader() {
|
||||
const { siteConfig } = useDocusaurusContext();
|
||||
|
||||
return (
|
||||
<header className={clsx('hero hero--primary', styles.heroBanner)}>
|
||||
<div className={styles.heroContent}>
|
||||
@@ -17,10 +16,10 @@ function HomepageHeader() {
|
||||
<img src={HeroImage} alt="Geyser Logo" className={styles.heroImageBackgroundBlur}/>
|
||||
<div className={styles.textSection}>
|
||||
<Heading as="h1" className="hero__title">
|
||||
{siteConfig.tagline}
|
||||
<Translate>Revolutionize Your Minecraft Server</Translate>
|
||||
</Heading>
|
||||
<p className="hero__subtitle">
|
||||
Enable clients from Minecraft Bedrock Edition to join your Minecraft Java server.
|
||||
<Translate>Enable clients from Minecraft Bedrock Edition to join your Minecraft Java server</Translate>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -33,7 +32,8 @@ export default function Home(): JSX.Element {
|
||||
return (
|
||||
<Layout
|
||||
title={`Hello from ${siteConfig.title}`}
|
||||
description="Description will go into a meta tag in <head />">
|
||||
description="Description will go into a meta tag in <head />"
|
||||
>
|
||||
<HomepageHeader />
|
||||
<main>
|
||||
<HomepageFeatures />
|
||||
|
||||
Reference in new issue
Block a user