Skip to content

Comments

chore: sync with main [skip ci]#91

Merged
HsiangNianian merged 30 commits intodevfrom
main
Feb 10, 2026
Merged

chore: sync with main [skip ci]#91
HsiangNianian merged 30 commits intodevfrom
main

Conversation

@HsiangNianian
Copy link
Member

@HsiangNianian HsiangNianian commented Feb 10, 2026

Summary by Sourcery

Add a new bilingual documentation site for DropOut and link it from the project README while improving roadmap and license information.

Enhancements:

  • Update the main README with a language toggle, roadmap link, clearer contribution section formatting, and an inline MIT license note.

Documentation:

  • Introduce a Fumadocs-based documentation site under packages/docs with React Router, covering getting started, features, architecture, development, and troubleshooting.
  • Provide full English and Simplified Chinese documentation content, including detailed guides for authentication, Java management, mod loaders, and overall launcher usage.
  • Add a new localized Chinese README and wire language switching between English and Chinese docs and landing pages.

Chores:

  • Set up docs-specific tooling and configuration (package.json, Vite, TypeScript, Tailwind, Biome, markdownlint) and adjust project routing for the new docs app.
  • Remove the CNAME file as part of documentation hosting changes.

NtskwK and others added 28 commits January 20, 2026 00:26
Added a link to the full roadmap for the project.
## Summary by Sourcery

Add a new documentation site package and a Chinese README to improve
project documentation and accessibility.

New Features:
- Introduce a dedicated @dropout/docs React Router application powered
by Fumadocs for hosting the project documentation.

Documentation:
- Add a Chinese README file providing an overview, installation, build
instructions, and contribution guidelines for Chinese-speaking users.
- Set up initial docs content, navigation, and metadata within the new
docs site, including example pages and search endpoint configuration.
Co-authored-by: HsiangNianian <44714368+HsiangNianian@users.noreply.github.com>
- Add development.mdx (开发指南)
- Add troubleshooting.mdx (故障排除)
- Add features/index.mdx (功能概览)
- Add features/authentication.mdx (身份验证)
- Add features/java.mdx (Java 管理)
- Add features/mod-loaders.mdx (模组加载器)

All translations maintain technical terms in English while translating content to simplified Chinese

Co-authored-by: HsiangNianian <44714368+HsiangNianian@users.noreply.github.com>
Co-authored-by: HsiangNianian <44714368+HsiangNianian@users.noreply.github.com>
Co-authored-by: HsiangNianian <44714368+HsiangNianian@users.noreply.github.com>
Co-authored-by: HsiangNianian <44714368+HsiangNianian@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: HsiangNianian <44714368+HsiangNianian@users.noreply.github.com>
## Summary by Sourcery

Improve bilingual README structure and formatting for clarity and
consistency.

Documentation:
- Add cross-links between English and Chinese READMEs for easier
language switching.
- Normalize README formatting including roadmap link styling, spacing,
and license section presentation in both languages.
@HsiangNianian HsiangNianian self-assigned this Feb 10, 2026
Copilot AI review requested due to automatic review settings February 10, 2026 04:14
@vercel
Copy link

vercel bot commented Feb 10, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
drop-out-docs Ready Ready Preview, Comment Feb 10, 2026 5:28am

@sourcery-ai
Copy link
Contributor

sourcery-ai bot commented Feb 10, 2026

Reviewer's Guide

Adds a full multi-language documentation site under packages/docs (with English and Simplified Chinese content) using Fumadocs + React Router, wires it into the project, and updates top-level README files and roadmap links accordingly.

Class diagram for new docs i18n and source structure

classDiagram
  class I18nConfig {
    +string defaultLanguage
    +string[] languages
    +string hideLocale
    +string parser
  }

  class SourceLoader {
    +getPage(slugs, lang)
    +serializePageTree(tree)
  }

  class LayoutShared {
    +baseOptions(locale)
  }

  class HomeRoute {
    +meta(args)
    +Component(props)
  }

  class DocsPageRoute {
    +loader(args)
    +Component(props)
  }

  class RootLayout {
    +Layout(children)
    +App()
    +ErrorBoundary(errorProps)
  }

  class DocsSearchApi {
    +loader(args)
  }

  class DocsCollections {
    +toFumadocsSource()
  }

  I18nConfig <.. RootLayout
  I18nConfig <.. HomeRoute
  I18nConfig <.. DocsPageRoute

  DocsCollections <.. SourceLoader
  SourceLoader <.. DocsPageRoute
  SourceLoader <.. DocsSearchApi

  LayoutShared <.. HomeRoute
  LayoutShared <.. DocsPageRoute

  RootLayout <.. HomeRoute
  RootLayout <.. DocsPageRoute
Loading

Flow diagram for docs routing and i18n handling

flowchart TD
  A["HTTP request"] --> B{Path pattern}

  B -->|"/ or /:lang"| H["home.tsx (Home route)"]
  B -->|"/:lang?/docs"| C["Redirect to getting-started"]
  B -->|"/:lang?/docs/*"| D["docs/page.tsx (Docs route)"]
  B -->|"/api/search"| E["docs/search.ts (Search API)"]
  B -->|"* (fallback)"| F["not-found.tsx"]

  subgraph I18nHandling["i18n handling"]
    I18nDef["i18n definition (i18n.ts)"]
    RootLayout["root.tsx Layout"]
    BaseOpts["baseOptions(locale)"]
  end

  H --> RootLayout
  D --> RootLayout
  F --> RootLayout

  RootLayout --> I18nDef
  RootLayout --> BaseOpts

  subgraph DocsResolution["Docs page resolution"]
    D --> L["loader: determine lang (params.lang or default zh)"]
    L --> M["compute slugs from wildcard segment"]
    M --> N["source.getPage(slugs, lang)"]
    N -->|found| O["serialize page tree for lang"]
    N -->|not found| P["404 response"]
  end

  C --> Q{Has lang and not default zh?}
  Q -->|no| R["redirect to /docs/getting-started"]
  Q -->|yes| S["redirect to /:lang/docs/getting-started"]
Loading

File-Level Changes

Change Details Files
Introduce a standalone docs app (Fumadocs + React Router) with i18n support and routing for English and Chinese content, including build tooling and shared layout config.
  • Add a new @dropout/docs package with React Router SSR setup, Vite config, Tailwind + Fumadocs integration, and TypeScript configuration.
  • Configure i18n via fumadocs-core to use directory-based locales (zh as default, en as secondary) and hide the default locale from URLs.
  • Implement shared layout options, i18n-aware navigation, and a localized home page plus docs routing (including search endpoint) that handle optional :lang prefixes.
  • Wire MDX collections through fumadocs-mdx (server and browser loaders) and expose them through a source loader for the docs runtime.
packages/docs/package.json
packages/docs/vite.config.ts
packages/docs/tsconfig.json
packages/docs/react-router.config.ts
packages/docs/source.config.ts
packages/docs/app/root.tsx
packages/docs/app/routes.ts
packages/docs/app/routes/home.tsx
packages/docs/app/routes/docs.tsx
packages/docs/app/routes/not-found.tsx
packages/docs/app/docs/page.tsx
packages/docs/app/docs/search.ts
packages/docs/app/lib/i18n.ts
packages/docs/app/lib/layout.shared.tsx
packages/docs/app/lib/source.ts
packages/docs/app/app.css
Author new documentation content (English and Chinese) for getting started, architecture, development, troubleshooting, and feature areas (auth, Java, mod loaders, instances, downloads, assistant), and register them in Fumadocs navigation metadata.
  • Create English docs index, getting-started, architecture, development, troubleshooting, and feature overview pages with MDX components and cross-links.
  • Create parallel Simplified Chinese docs pages mirroring the English structure and content, preserving code blocks and technical terms as appropriate.
  • Add dedicated feature subpages for authentication, Java management, mod loaders, and overall features in both English and Chinese.
  • Define meta.json files for en/zh roots and features subtrees to control sidebar structure and titles.
packages/docs/content/en/index.mdx
packages/docs/content/en/getting-started.mdx
packages/docs/content/en/architecture.mdx
packages/docs/content/en/development.mdx
packages/docs/content/en/troubleshooting.mdx
packages/docs/content/en/features/index.mdx
packages/docs/content/en/features/authentication.mdx
packages/docs/content/en/features/java.mdx
packages/docs/content/en/features/mod-loaders.mdx
packages/docs/content/en/features/meta.json
packages/docs/content/en/meta.json
packages/docs/content/zh/index.mdx
packages/docs/content/zh/getting-started.mdx
packages/docs/content/zh/architecture.mdx
packages/docs/content/zh/development.mdx
packages/docs/content/zh/troubleshooting.mdx
packages/docs/content/zh/features/index.mdx
packages/docs/content/zh/features/authentication.mdx
packages/docs/content/zh/features/java.mdx
packages/docs/content/zh/features/mod-loaders.mdx
packages/docs/content/zh/features/meta.json
packages/docs/content/zh/meta.json
Add dedicated development and troubleshooting guides (both languages) with detailed build, test, debugging, and support instructions for DropOut.
  • Document full development environment setup, project structure, workflows, and contribution guidelines in English and Chinese MDX under content/*/development.mdx.
  • Provide comprehensive troubleshooting guides in both languages covering install/auth, launch, downloads, mod loaders, performance, filesystem, and support escalation paths.
packages/docs/content/en/development.mdx
packages/docs/content/zh/development.mdx
packages/docs/content/en/troubleshooting.mdx
packages/docs/content/zh/troubleshooting.mdx
Localize and polish top-level README and link docs/README, adding Chinese README and aligning roadmap and license info.
  • Add language switcher at the top of README.md and create a Chinese translation README.CN.md with equivalent structure and badges.
  • Insert a roadmap.sh link in the README Roadmap section and tweak spacing/markdown formatting in usage sections and contribution bullets.
  • Move license sentence in README to sit above FOSSA badges for clarity and mirror that layout in README.CN.md.
  • Add packages/docs/README.md explaining the docs app, dev commands, structure, and i18n workflow.
README.md
README.CN.md
packages/docs/README.md
Project hygiene and config adjustments to support the new docs package.
  • Remove the CNAME file, likely to decouple previous custom domain settings from the repo root.
  • Introduce docs-local tooling/config files such as .gitignore, biome.json, and .markdownlint.json (in repo root) to enforce formatting and linting for documentation.
  • Ensure pnpm-lock.yaml is updated for the new dependencies introduced by the docs package.
CNAME
.markdownlint.json
packages/docs/.gitignore
packages/docs/biome.json
pnpm-lock.yaml

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Copy link
Contributor

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey - I've found 2 issues, and left some high level feedback:

  • In the English and Chinese MDX files you’re hard-coding links like /docs/..., which will always resolve to the default locale and ignore the current language; consider using relative links (e.g. getting-started, ../features/...) or an i18n-aware helper so navigation stays in the active locale.
  • Repository URLs are inconsistent between HsiangNianian/DropOut and HydroRoll-Team/DropOut across README and docs (e.g., release links, issues links, repo links); aligning these to a single canonical GitHub org/repo will avoid broken or confusing links.
Prompt for AI Agents
Please address the comments from this code review:

## Overall Comments
- In the English and Chinese MDX files you’re hard-coding links like `/docs/...`, which will always resolve to the default locale and ignore the current language; consider using relative links (e.g. `getting-started`, `../features/...`) or an i18n-aware helper so navigation stays in the active locale.
- Repository URLs are inconsistent between `HsiangNianian/DropOut` and `HydroRoll-Team/DropOut` across README and docs (e.g., release links, issues links, repo links); aligning these to a single canonical GitHub org/repo will avoid broken or confusing links.

## Individual Comments

### Comment 1
<location> `packages/docs/content/zh/troubleshooting.mdx:427-436` </location>
<code_context>
+
+**解决方案:**
+
+**1. 检查权限:**
+```bash
+# Linux
+chmod -R 700 ~/.local/share/com.dropout.launcher
+
+# macOS
+chmod -R 700 ~/Library/Application\ Support/com.dropout.launcher
+```
+
</code_context>

<issue_to_address>
**🚨 suggestion (security):** File-permission guidance diverges from the English version and omits ownership correction

The Chinese docs only suggest `chmod -R 700`, while the English version also uses `chown` and `chmod -R u+rwX,go-rwx`. If the directories are owned by root (e.g. after using sudo), changing only the mode may not resolve access or ownership problems. Please align this snippet with the English version (including `chown` and explicit `go-rwx`), or clarify when `chmod -R 700` alone is appropriate.

```suggestion
**解决方案:**

**1. 检查目录所有者和权限:**

如果你曾使用 `sudo` 运行过 DropOut 启动器,游戏目录可能被 `root` 拥有,需要先将所有者改回当前用户,然后再收紧权限:

```bash
# Linux
sudo chown -R "$USER":"$USER" ~/.local/share/com.dropout.launcher
chmod -R u+rwX,go-rwx ~/.local/share/com.dropout.launcher

# macOS
sudo chown -R "$USER":"$USER" ~/Library/Application\ Support/com.dropout.launcher
chmod -R u+rwX,go-rwx ~/Library/Application\ Support/com.dropout.launcher
```

如果确认目录已经属于当前用户,只需要执行上面的 `chmod` 命令即可。
```
</issue_to_address>

### Comment 2
<location> `README.CN.md:77` </location>
<code_context>
+
+## 安装
+
+从 [Releases](https://github.com/HsiangNianian/DropOut/releases) 页面下载适用于您平台的最新版本。
+
+| 平台          | 文件                    |
</code_context>

<issue_to_address>
**suggestion (typo):** Slight grammatical adjustment: "您平台" → "您的平台".

可以改为:“从 [Releases] 页面下载适用于您的平台的最新版本。” 或更通用地写成“下载适用于各个平台的最新版本”。

```suggestion
从 [Releases](https://github.com/HsiangNianian/DropOut/releases) 页面下载适用于您的平台的最新版本。
```
</issue_to_address>

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

Comment on lines +427 to +436
**解决方案:**

**1. 检查权限:**
```bash
# Linux
chmod -R 700 ~/.local/share/com.dropout.launcher

# macOS
chmod -R 700 ~/Library/Application\ Support/com.dropout.launcher
```
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚨 suggestion (security): File-permission guidance diverges from the English version and omits ownership correction

The Chinese docs only suggest chmod -R 700, while the English version also uses chown and chmod -R u+rwX,go-rwx. If the directories are owned by root (e.g. after using sudo), changing only the mode may not resolve access or ownership problems. Please align this snippet with the English version (including chown and explicit go-rwx), or clarify when chmod -R 700 alone is appropriate.

Suggested change
**解决方案:**
**1. 检查权限:**
```bash
# Linux
chmod -R 700 ~/.local/share/com.dropout.launcher
# macOS
chmod -R 700 ~/Library/Application\ Support/com.dropout.launcher
```
**解决方案:**
**1. 检查目录所有者和权限:**
如果你曾使用 `sudo` 运行过 DropOut 启动器,游戏目录可能被 `root` 拥有,需要先将所有者改回当前用户,然后再收紧权限:
```bash
# Linux
sudo chown -R "$USER":"$USER" ~/.local/share/com.dropout.launcher
chmod -R u+rwX,go-rwx ~/.local/share/com.dropout.launcher
# macOS
sudo chown -R "$USER":"$USER" ~/Library/Application\ Support/com.dropout.launcher
chmod -R u+rwX,go-rwx ~/Library/Application\ Support/com.dropout.launcher

如果确认目录已经属于当前用户,只需要执行上面的 chmod 命令即可。


## 安装

从 [Releases](https://github.com/HsiangNianian/DropOut/releases) 页面下载适用于您平台的最新版本。
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

suggestion (typo): Slight grammatical adjustment: "您平台" → "您的平台".

可以改为:“从 [Releases] 页面下载适用于您的平台的最新版本。” 或更通用地写成“下载适用于各个平台的最新版本”。

Suggested change
[Releases](https://github.com/HsiangNianian/DropOut/releases) 页面下载适用于您平台的最新版本
[Releases](https://github.com/HsiangNianian/DropOut/releases) 页面下载适用于您的平台的最新版本

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new packages/docs documentation site (Fumadocs + React Router) with bilingual (zh/en) content and updates repository-level README/docs tooling to support it.

Changes:

  • Introduce a full docs app under packages/docs (React Router routes, Fumadocs source/search, Tailwind, Biome config).
  • Add EN/ZH documentation content structure and navigation metadata.
  • Update root readmes and markdown lint configuration; remove CNAME.

Reviewed changes

Copilot reviewed 45 out of 48 changed files in this pull request and generated 12 comments.

Show a summary per file
File Description
packages/docs/vite.config.ts Vite plugins for docs build
packages/docs/tsconfig.json TypeScript config for docs package
packages/docs/source.config.ts Fumadocs MDX source config
packages/docs/react-router.config.ts React Router SSR config
packages/docs/public/favicon.ico Add docs favicon asset
packages/docs/package.json Docs package deps + scripts
packages/docs/content/zh/troubleshooting.mdx ZH troubleshooting page
packages/docs/content/zh/meta.json ZH docs nav metadata
packages/docs/content/zh/index.mdx ZH docs landing page
packages/docs/content/zh/getting-started.mdx ZH getting started page
packages/docs/content/zh/features/mod-loaders.mdx ZH mod loaders doc
packages/docs/content/zh/features/meta.json ZH features nav metadata
packages/docs/content/zh/features/java.mdx ZH Java management doc
packages/docs/content/zh/features/index.mdx ZH features overview doc
packages/docs/content/zh/features/authentication.mdx ZH authentication doc
packages/docs/content/zh/development.mdx ZH development guide
packages/docs/content/zh/architecture.mdx ZH architecture doc
packages/docs/content/en/troubleshooting.mdx EN troubleshooting page
packages/docs/content/en/meta.json EN docs nav metadata
packages/docs/content/en/index.mdx EN docs landing page
packages/docs/content/en/getting-started.mdx EN getting started page
packages/docs/content/en/features/mod-loaders.mdx EN mod loaders doc
packages/docs/content/en/features/meta.json EN features nav metadata
packages/docs/content/en/features/java.mdx EN Java management doc
packages/docs/content/en/features/index.mdx EN features overview doc
packages/docs/content/en/features/authentication.mdx EN authentication doc
packages/docs/content/en/development.mdx EN development guide
packages/docs/content/en/architecture.mdx EN architecture doc
packages/docs/biome.json Biome config for docs package
packages/docs/app/routes/not-found.tsx 404 route handler
packages/docs/app/routes/home.tsx Localized marketing home route
packages/docs/app/routes/docs.tsx Docs index redirect logic
packages/docs/app/routes.ts Route table (home/docs/api/404)
packages/docs/app/root.tsx Root layout + error boundary
packages/docs/app/lib/source.ts Fumadocs source loader wiring
packages/docs/app/lib/layout.shared.tsx Shared layout options + links
packages/docs/app/lib/i18n.ts Fumadocs i18n config
packages/docs/app/docs/search.ts Server search endpoint
packages/docs/app/docs/page.tsx Docs page renderer + loader
packages/docs/app/app.css Tailwind + fumadocs styles
packages/docs/README.md Docs package README
packages/docs/.gitignore Ignore build + generated dirs
README.md Add CN link + roadmap URL
README.CN.md Add Chinese root README
CNAME Remove custom pages domain
.markdownlint.json Add markdownlint configuration

Comment on lines +13 to +15
tsconfigPaths({
root: __dirname,
}),
Copy link

Copilot AI Feb 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This Vite config runs as ESM because packages/docs/package.json sets "type": "module", so __dirname is not defined at runtime. Compute the directory from import.meta.url (or remove the root option) to avoid config startup failures.

Copilot uses AI. Check for mistakes.
Comment on lines +5 to +11
const server = createFromSource(source, {
localeMap: {
zh: {
language: 'english',
},
},
});
Copy link

Copilot AI Feb 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The search locale map sets zh.language to 'english', which will likely produce incorrect tokenization/stemming for Chinese content. Use the correct language configuration for Chinese (or omit the override if the library auto-detects).

Suggested change
const server = createFromSource(source, {
localeMap: {
zh: {
language: 'english',
},
},
});
const server = createFromSource(source);

Copilot uses AI. Check for mistakes.
Comment on lines +17 to +21
The documentation is available in:

- **English** (default) - `content/docs/en/`
- **简体中文** (Simplified Chinese) - `content/docs/zh/`

Copy link

Copilot AI Feb 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This README describes docs content under content/docs/{en,zh}, but the repository structure is content/{en,zh} (no docs/ level) and app/lib/i18n.ts sets the default language to zh (not English). Please update these paths/default language statements so contributors follow the actual layout.

Copilot uses AI. Check for mistakes.
Comment on lines +119 to +139
<Cards>
<Card
title="功能特性"
href="/docs/features"
description="了解 DropOut 提供的所有功能"
/>
<Card
title="实例管理"
href="/docs/features/instances"
description="创建隔离的游戏环境"
/>
<Card
title="模组加载器"
href="/docs/features/mod-loaders"
description="安装和管理 Fabric 和 Forge"
/>
<Card
title="故障排除"
href="/docs/troubleshooting"
description="常见问题和解决方案"
/>
Copy link

Copilot AI Feb 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The "Next Steps" card links are absolute (/docs/...), so when browsing English pages under /en/... these will route back to the default-locale docs. Prefer relative links (e.g. features, features/mod-loaders, troubleshooting) or otherwise make them locale-aware.

Copilot uses AI. Check for mistakes.
Comment on lines +28 to +42
<Card
title="实例"
href="instances"
description="具有独立配置的隔离游戏环境"
/>
<Card
title="下载"
href="downloads"
description="快速并发下载,支持断点续传"
/>
<Card
title="AI 助手"
href="assistant"
description="内置 AI 助手用于故障排除和指导"
/>
Copy link

Copilot AI Feb 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

这些卡片链接到 instances / downloads / assistant,但 content/zh/features/ 下并没有对应页面(当前只有 authentication/java/mod-loaders)。这会导致导航出现 404;建议补齐页面或移除/调整这些卡片。

Copilot uses AI. Check for mistakes.
Comment on lines +28 to +42
<Card
title="Instances"
href="instances"
description="Isolated game environments with independent configs"
/>
<Card
title="Downloads"
href="downloads"
description="Fast concurrent downloads with resume support"
/>
<Card
title="AI Assistant"
href="assistant"
description="Built-in AI helper for troubleshooting and guidance"
/>
Copy link

Copilot AI Feb 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These cards link to instances, downloads, and assistant, but those pages don't exist under content/en/features/ (only authentication/java/mod-loaders are present). This will create broken navigation links; either add the missing pages or remove/update these cards.

Suggested change
<Card
title="Instances"
href="instances"
description="Isolated game environments with independent configs"
/>
<Card
title="Downloads"
href="downloads"
description="Fast concurrent downloads with resume support"
/>
<Card
title="AI Assistant"
href="assistant"
description="Built-in AI helper for troubleshooting and guidance"
/>

Copilot uses AI. Check for mistakes.
Comment on lines +119 to +139
<Cards>
<Card
title="Features"
href="/docs/features"
description="Learn about all the features DropOut offers"
/>
<Card
title="Instances"
href="/docs/features/instances"
description="Create isolated game environments"
/>
<Card
title="Mod Loaders"
href="/docs/features/mod-loaders"
description="Install and manage Fabric and Forge"
/>
<Card
title="Troubleshooting"
href="/docs/troubleshooting"
description="Common issues and solutions"
/>
Copy link

Copilot AI Feb 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The "Next Steps" card links are absolute (/docs/...), which will send users to the default-locale (zh) pages even when browsing under /en/.... Prefer relative links (e.g. features, features/mod-loaders, troubleshooting) or generate locale-aware URLs to keep navigation in the current language.

Copilot uses AI. Check for mistakes.
2. **安装前端依赖**

```bash
cd ui
Copy link

Copilot AI Feb 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

构建步骤里写的是 cd ui,但仓库实际前端目录是 packages/ui(同一仓库其他文档也使用 packages/ui)。建议修正文档以免新人按步骤执行时找不到目录。

Suggested change
cd ui
cd packages/ui

Copilot uses AI. Check for mistakes.
Comment on lines +73 to +77
export function meta({ params }: Route.MetaArgs) {
return [
{ title: 'DropOut - Modern Minecraft Launcher' },
{ name: 'description', content: 'A modern, reproducible, and developer-grade Minecraft launcher built with Tauri v2 and Rust.' },
];
Copy link

Copilot AI Feb 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

meta destructures { params } but doesn't use it, which will be flagged by the linter (unused variable). Either remove the destructuring or use _params to make the intent explicit.

Copilot uses AI. Check for mistakes.
},
});

export default function Page({ loaderData, params }: Route.ComponentProps) {
Copy link

Copilot AI Feb 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Page destructures params but never uses it, which can trigger unused-variable lint failures. Consider removing it from the function signature.

Suggested change
export default function Page({ loaderData, params }: Route.ComponentProps) {
export default function Page({ loaderData }: Route.ComponentProps) {

Copilot uses AI. Check for mistakes.
@HsiangNianian HsiangNianian merged commit 21ec63e into dev Feb 10, 2026
20 of 22 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants