git clone https://github.com/involutionhell/involutionhell.github.io.git
cd involutionhell.github.ioๆไปฌไฝฟ็จ pnpm ไฝไธบๅ ็ฎก็ๅทฅๅ ท๏ผ
pnpm installๅฆๆไฝ ่ฟๆฒกๆๅฎ่ฃ pnpm๏ผ
npm install -g pnpm่ฟ่กๅผๅๆๅกๅจ๏ผ
pnpm devๆๅผๆต่งๅจ่ฎฟ้ฎ http://localhost:3000ใ
ไฟฎๆน docs/ ไธ็ .md ๆ .mdx ๆไปถ๏ผไผ่ชๅจ็ญๆดๆฐใ
ๆๆๆๆกฃๆพๅจ docs/ ็ฎๅฝใ
ๆฏไธชๆๆกฃ้ฝ้่ฆไธไธช Frontmatter๏ผไพๅฆ๏ผ
---
title: Hello World
description: ็ฎ็ญๆ่ฟฐ
date: "2025-09-11"
tags:
- intro
---
# Hello World
่ฟๆฏๆญฃๆๅ
ๅฎนใๅฟ ๅกซๅญๆฎต:
- title: ๅฟ ๅกซ๏ผๆๆกฃๆ ้ข
ๅฏ้ๅญๆฎต:
- description: ็ฎ็ญ่ฏดๆ
- date: ๅๅธๆฅๆ
- tags: ๆ ็ญพๅ่กจ
ๆไปฌ็ๆๆกฃ้็จๅๅฑๅผ็ "Folder as a Book" ็ปๆ๏ผไผ่ชๅจ็ๆ URL ๅๅฏผ่ชใ
๐ docs/
โโโ ๐ computer-science/ # ่ฎก็ฎๆบ็งๅญฆ
โ โโโ ๐ index.mdx # ๆฆ่ฟฐ
โ โโโ ๐ data-structures/ # ๆฐๆฎ็ปๆ
โ โโโ ๐ index.mdx # ๆฆ่ฟฐ
โ โโโ ๐ array/ # ๆฐ็ป
โ โ โโโ ๐ index.mdx # ๆฆ่ฟฐ
โ โ โโโ ๐ 01-static-array.mdx # ้ๆๆฐ็ป
โ โ โโโ ๐ 02-dynamic-array.mdx # ๅจๆๆฐ็ป
โ โโโ ๐ linked-list/ # ้พ่กจ
โ โโโ ๐ index.mdx # ๆฆ่ฟฐ
โ โโโ ๐ 01-singly-linked-list.mdx # ๅๅ้พ่กจ
ๆไปถ็ปๆไผ่ชๅจ็ๆ็ฎๆด็ URL๏ผ
docs/computer-science/index.mdxโ/computer-sciencedocs/computer-science/data-structures/array/01-static-array.mdxโ/computer-science/data-structures/array/static-array
ๆไปถๅคน:
- ไฝฟ็จ
kebab-caseๅฝๅ:computer-science,data-structures - ๆฏไธชไธป้ขๆไปถๅคนๅบ่ฏฅๆไธไธช
index.mdxๆไปถไฝไธบๆฆ่ฟฐ
ๆไปถ:
- ไฝฟ็จ
kebab-caseๅฝๅ:static-array.mdx - ไฝฟ็จๆฐๅญๅ็ผๆๅบ:
01-,02- - ๅ็ผไผ่ชๅจไปๆ็ป URL ไธญ็งป้ค
็กฎๅฎไฝ ็ๆ็ซ ๅจ็ฐๆ็ปๆไธญ็ไฝ็ฝฎ๏ผ
# ็คบไพ๏ผๆทปๅ ๆฐ็ๆฐๆฎ็ปๆไธป้ข
docs/computer-science/data-structures/new-topic/
# ็คบไพ๏ผไธบ็ฐๆไธป้ขๆทปๅ ๆ็ซ
docs/computer-science/data-structures/array/03-new-array-type.mdxๅๅปบๆฐ็ .mdx ๆไปถ๏ผๅนถๅ
ๅซๆญฃ็กฎ็ Frontmatter๏ผ
# ๅฆ้่ฆๅๅปบ็ฎๅฝ
mkdir -p docs/computer-science/data-structures/new-topic
# ๅๅปบๆไปถ
touch docs/computer-science/data-structures/new-topic/index.mdxไฝฟ็จ Markdown/MDX ็ผๅๆ็ซ ๏ผ
---
title: "ๆ็ซ ๆ ้ข"
description: "ๆ็ซ ็ฎ็ญๆ่ฟฐ"
date: "2024-01-15"
tags:
- your-topic
- another-tag
---
# ๆ็ซ ๆ ้ข
## ๅผ่จ
่ฟ้ๆฏๅ
ๅฎน...
## ็ฌฌไธ่
ๆดๅคๅ
ๅฎน...
## ไปฃ็ ็คบไพ
```javascript
// ไฝ ็ไปฃ็
function example() {
return "Hello World!";
}ๆ็ซ ๆป็ป...
### ๆญฅ้ชค4๏ผๆต่ฏไฟฎๆน
ไฝฟ็จ Fumadocs ้ช่ฏๅ
ๅฎน๏ผ
```bash
pnpm build
ๆญคๅฝไปคๅฐ๏ผ
- ้ช่ฏ Frontmatter ่ฏญๆณ
- ๆฃๆฅ MDX ้่ฏฏ
- ็ๆ้ข่งๅ ๅฎน
ๅฏๅจๅผๅๆๅกๅจๅนถ้ข่งไฟฎๆน๏ผ
pnpm dev่ฎฟ้ฎ http://localhost:3000 ๆฅ็ๆฐๅ
ๅฎนใ
-
ๆไบคไฟฎๆน๏ผ
git add . git commit -m "Add: New article about [topic]"
-
ๆจ้ๅฐไฝ ็ fork๏ผ
git push origin feat/your-article
-
ๅๅปบ Pull Request
- ๅ็กฎๆง๏ผ็กฎไฟๆๆฏๅ็กฎๆง
- ๆธ ๆฐๆง๏ผ็ผๅๆธ ๆฐๆๆ็่งฃ้
- ๅฎๆดๆง๏ผๅ จ้ข่ฆ็ไธป้ข
- ็คบไพ๏ผๅ ๅซๅฎ้ ไปฃ็ ็คบไพ
- ๆดๆฐ๏ผไฟๆๅ ๅฎนๆดๆฐ
- ไฝฟ็จๆญฃ็กฎ็ๆ ้ขๅฑๆฌก็ปๆ (h1 โ h2 โ h3)
- ๅ ๅซๅธฆๆ่ฏญๆณ้ซไบฎ็ไปฃ็ ๅ
- ไฝฟ็จ่กจๆ ผ่ฟ่กๆฏ่พ
- ไธบๅพ็ๆทปๅ ๆฟไปฃๆๆฌ
- ไฝฟ็จ้พๆฅๅผ็จ็ธๅ ณๅ ๅฎน
// โ
ๅฅฝ็ๅๆณ๏ผๆธ
ๆฐใๆๆณจ้็ไปฃ็
function binarySearch(arr, target) {
let left = 0;
let right = arr.length - 1;
while (left <= right) {
const mid = Math.floor((left + right) / 2);
if (arr[mid] === target) {
return mid; // ๆพๅฐ็ฎๆ
} else if (arr[mid] < target) {
left = mid + 1; // ๆ็ดขๅณๅ้จๅ
} else {
right = mid - 1; // ๆ็ดขๅทฆๅ้จๅ
}
}
return -1; // ๆชๆพๅฐ็ฎๆ
}- ่ฑๆ๏ผไฝฟ็จๆธ ๆฐใไธไธ็่ฑๆ
- ไธญๆ๏ผๅจ้่ฆๆถไฝฟ็จๆญฃๅผ็ๅญฆๆฏไธญๆ
- ๆๆฏๆฏ่ฏญ๏ผไฝฟ็จๆ ๅๆๆฏๆฏ่ฏญ
- ไธ่ดๆง๏ผๅจๆดไธชๆๆกฃไธญไฟๆไธ่ด็ๆฏ่ฏญ
pnpm build่ฟไผๅจ .next ๆไปถๅคนไธญๅๅปบไผๅ็็ไบงๆๅปบใ
pnpm exportๅฏผๅบๅ็ /out ็ฎๅฝๅ
ๅซ้ๆ็ซ็น๏ผๅฏ็ดๆฅ้จ็ฝฒๅฐ GitHub Pagesใ
ๆฌไปๅบ้
็ฝฎไบ GitHub Actions๏ผpush ๅฐ main ๅๆฏไผ่ชๅจๆๅปบๅนถ้จ็ฝฒๅฐ๏ผ
๐ https://involutionhell.github.io/
ๆ ้ๆๅจๆไฝใ
้่ฆๆ้๏ผๅจๅผๅงไปปไฝๅ่ฝๅผๅไนๅ๏ผ่ฏทๅ ๅจ GitHub Issues ไธญๅๅปบๆๆฅๆพ็ธๅ ณ issueใ่ฟๆๅฉไบ๏ผ
- ้ฟๅ ้ๅคๅผๅ๏ผ็กฎไฟไธไผไธไปไบบๆญฃๅจ่ฟ่ก็ๅผๅๅฒ็ช
- ็ปไธๅผๅๆนๅ๏ผ้่ฟ่ฎจ่ฎบ็กฎๅฎๅ่ฝ็ๅ ทไฝ้ๆฑๅๅฎ็ฐๆนๆก
- ้ๆๅผๅ่ฟๅบฆ๏ผ่ฎฉ็คพๅบไบ่งฃ้กน็ฎๅฝๅๅผๅ็ถๆ
- ไพฟไบๅไฝ๏ผๅ ถไป่ดก็ฎ่ ๅฏไปฅๅไธ่ฎจ่ฎบๅๆไพๅปบ่ฎฎ
- ๆฃๆฅ็ฐๆ Issue๏ผๅ ๆ็ดขๆฏๅฆๅทฒๆ็ธๅ ณ issue๏ผ้ฟๅ ้ๅคๅๅปบ
- ๆธ ๆฐๆ่ฟฐ๏ผ่ฏฆ็ป่ฏดๆๅ่ฝ้ๆฑใ้ขๆๆๆๅไฝฟ็จๅบๆฏ
- ๆทปๅ ๆ ็ญพ๏ผไฝฟ็จๅ้็ๆ ็ญพ๏ผๅฆ
enhancement,feature,discussion๏ผ - ๅ ณ่ๅผๅๅๆฏ๏ผๅฆๆๅผๅงๅผๅ๏ผ่ฏทๅจ issue ไธญ้พๆฅไฝ ็ๅผๅๅๆฏ
- ๅ่ฝ่ฏทๆฑ (
feature): ๆฐๅ่ฝ้ๆฑ - ๆน่ฟๅปบ่ฎฎ (
enhancement): ็ฐๆๅ่ฝ็ๆน่ฟ - ้ฎ้ขๅ้ฆ (
bug): ๅ็ฐ็bugๆ้ฎ้ข - ่ฎจ่ฎบ่ฏ้ข (
discussion): ้่ฆ็คพๅบ่ฎจ่ฎบ็่ฏ้ข
- Fork ๆฌไปๅบ
- ไธบไฟฎๆนๅๅปบๆฐๅๆฏ
- ่ฟ่กไฟฎๆน
- ๆต่ฏไฟฎๆน
- ๆไบค PR
ๆไปฌๆฌข่ฟไปฅไธ็ฑปๅ็่ดก็ฎ๏ผ
๐ ๅ ๅฎน่ดก็ฎ
- ไฟฎๆญฃๆๆกฃๅ ๅฎน
- ๆทปๅ ๆฐ็ๆ็จๆๆๅ
- ๅฐๅ ๅฎน็ฟป่ฏๆๅ ถไป่ฏญ่จ
- ๆน่ฟ็ฐๆๆ็ซ
๐ ้่ฏฏไฟฎๅค
- ไฟฎๅคๆผๅๅ่ฏญๆณ้่ฏฏ
- ไฟฎๅคๆๅ็้พๆฅ
- ไฟฎๅค้่ฏฏไฟกๆฏ
- ๆน่ฟไปฃ็ ็คบไพ
๐จ UI/UX ๆน่ฟ
- ๆน่ฟ้กต้ขๆ ทๅผ
- ๅขๅผบ็จๆทไบคไบ
- ๆน่ฟ็งปๅจ็ซฏๅๅบๆง
- ไธบ UI ๆทปๅ ๆฐๅ่ฝ
ไผๅ ไฝฟ็จ Fumadocs UI ็ปไปถๅบ๏ผ
ๆฌ้กน็ฎๅทฒ่ฟ็งปๅฐ Fumadocs UI ไฝไธบไธป่ฆ UI ๆกๆถใ่ฏทๅจ่ฟ่ก UI ็ธๅ ณๅผๅๆถไผๅ ่่๏ผ
-
ไฝฟ็จ Fumadocs UI ็ปไปถ๏ผ
- ๆฅ็ Fumadocs UI ๆๆกฃ ไบ่งฃๅฏ็จ็ปไปถ
- ไผๅ ไฝฟ็จๅ ็ฝฎ็ปไปถ่ไธๆฏ่ชๅฎไนๅฎ็ฐ
- ้ตๅพช Fumadocs UI ็่ฎพ่ฎก่ง่ๅๆ ทๅผๆๅ
-
ไฟๆ่ฎพ่ฎกไธ่ดๆง๏ผ
- ไฝฟ็จ็ปไธ็้ข่ฒๆนๆกๅๅญไฝ
- ้ตๅพช็ฐๆ็็ปไปถๆ ทๅผๅไบคไบๆจกๅผ
- ไฟๆๅๅบๅผ่ฎพ่ฎก็ๅ ผๅฎนๆง
-
ๆฐๅ่ฝๅผๅ๏ผ
- ๅจๆ issue ่ฎจ่ฎบๆฐๅ่ฝ้ๆฑๆถ๏ผ่ฏทๆ็กฎ UI ๆน้ข็ๅ ทไฝ่ฆๆฑ
- ไผๅ ่่ไฝฟ็จ Fumadocs UI ็ๆฉๅฑๅ่ฝ
- ๅฆ้่ชๅฎไน็ปไปถ๏ผ่ฏทไธๅข้่ฎจ่ฎบไปฅไฟๆไธ่ดๆง
-
ๆต่ฏ่ฆๆฑ๏ผ
- ็กฎไฟๆฐ UI ๅ่ฝๅจไธๅ่ฎพๅคๅๅฑๅนๅฐบๅฏธไธๆญฃๅธธๅทฅไฝ
- ๆต่ฏไธป้ขๅๆข๏ผๆต ่ฒ/ๆทฑ่ฒๆจกๅผ๏ผๅ ผๅฎนๆง
- ้ช่ฏๆ ้็ข่ฎฟ้ฎๅ่ฝ
๐ ๏ธ ๆๆฏๆน่ฟ
- ๆน่ฟๆๅปบ่ฟ็จ
- ๆทปๅ ๆฐ็่ๆฌๆๅทฅๅ ท
- ไผๅๆง่ฝ
- ๆน่ฟๅฏ่ฎฟ้ฎๆง
่ฏทไฝฟ็จไปฅไธๆ ผๅผไนไธไฝไธบ PR ๆ ้ข๏ผ
Add: New article about [topic] # ๆทปๅ ๆฐๆ็ซ
Fix: Typo in [file] # ไฟฎๅค้่ฏฏ
Update: Improve [feature] # ๆดๆฐๆน่ฟ
Docs: Update contribution guidelines # ๆๆกฃๆดๆฐ
Feat: Add [new feature] # ๆฐๅ่ฝ
ๅฅฝ็ PR ๆ่ฟฐๅบ่ฏฅๅ ๆฌ๏ผ
- ๅไบไปไนไฟฎๆน๏ผ
- ไธบไปไน้่ฆ่ฟไบไฟฎๆน๏ผ
- ๅฆไฝๆต่ฏ่ฟไบไฟฎๆน๏ผ
- ๆ็ ดๅๆงๆดๆนๅ๏ผ
## What
Added a new article about dynamic programming algorithms.
## Why
Students need better resources for understanding dynamic programming concepts.
## How
- Created new MDX file with comprehensive examples
- Tested content generation with `pnpm build`
- Verified rendering on local development server
## Testing
- Fumadocs validation passed
- No linting errors
- Previewed locally at `/computer-science/algorithms/dynamic-programming`-
่ชๅจๆฃๆฅ
- GitHub Actions ๅฐ่ฟ่ก่ชๅจๅๆต่ฏ
- Fumadocs ๅฐ้ช่ฏไฝ ็ๅ ๅฎน
- Linting ๅฐๆฃๆฅไปฃ็ ่ดจ้
-
ๅ่ก่ฏๅฎก
- ่ณๅฐไธไฝ็ปดๆค่ ๅฐๅฎกๆฅไฝ ็ PR
- ๅฎก้ ่ ๅฏ่ฝไผ่ฆๆฑไฟฎๆน
- ไฝ ๅฏไปฅๆ นๆฎๅ้ฆๆดๆฐไฝ ็ PR
-
ๅๅนถ
- ไธๆฆๆนๅ๏ผ็ปดๆค่ ๅฐๅๅนถไฝ ็ PR
- ไฝ ็่ดก็ฎๅฐ่ชๅจ้จ็ฝฒ
ๅฆๆไฝ ๅจ่ดก็ฎ่ฟ็จไธญ้่ฆๅธฎๅฉ๏ผ
- ๐ง Issues๏ผไธบ้ฎ้ขๆ้่ฏฏๅๅปบ issue
- ๐ฌ Discussions๏ผไฝฟ็จ GitHub Discussions ่ฟ่กไธ่ฌๆง้ฎ้ข่ฎจ่ฎบ
- ๐ Documentation๏ผๆฅ็ๆญค CONTRIBUTING.md ๆไปถ
- ๐ฅ Community๏ผๅ ๅ ฅๆไปฌ็็คพๅบ่ฎจ่ฎบ
่ดก็ฎ่ ๅฐ๏ผ
- ่ขซๅๅ ฅไปๅบ่ดก็ฎ่ ๅๅ
- ๅจๅๅธ่ฏดๆไธญๆๅ้่ฆ่ดก็ฎ
- ๅจๆไปฌ็ๆๆกฃไธญๅพๅฐ่ฎคๅฏ
่ฏทๅจๆๆไบๅจไธญไฟๆๅฐ้ๅๅ ๅฎนใๆไปฌ้ตๅพช่กไธบๅๅไปฅ็กฎไฟ็งฏๆ็็คพๅบไฝ้ชใ
ๆ่ฐขไฝ ไธบ Involution Hell Docs ๅๅบ็่ดก็ฎ๏ผ๐
Thank you for your interest in Involution Hell Docs!
This is an open-source documentation site built with Next.js + Fumadocs, with content stored in the app/docs/ folder.
We welcome Pull Requests and Issues!
git clone https://github.com/involutionhell/involutionhell.github.io.git
cd involutionhell.github.ioWe use pnpm as our package manager:
pnpm installIf you don't have pnpm installed:
npm install -g pnpmRun the development server:
pnpm devOpen http://localhost:3000 in your browser.
Changes to .md or .mdx files in the docs/ folder will auto-update.
All documentation is stored in the docs/ directory.
Each document needs a Frontmatter header, for example:
---
title: Hello World
description: Brief description
date: "2025-09-11"
tags:
- intro
---
# Hello World
This is the main content.Required fields:
- title: Required, document title
Optional fields:
- description: Brief description
- date: Publication date
- tags: Tag list
Our documentation follows a hierarchical "Folder as a Book" structure that automatically generates URLs and navigation.
๐ docs/
โโโ ๐ computer-science/ # Computer Science
โ โโโ ๐ index.mdx # Overview
โ โโโ ๐ data-structures/ # Data Structures
โ โโโ ๐ index.mdx # Overview
โ โโโ ๐ array/ # Arrays
โ โ โโโ ๐ index.mdx # Overview
โ โ โโโ ๐ 01-static-array.mdx # Static Arrays
โ โ โโโ ๐ 02-dynamic-array.mdx # Dynamic Arrays
โ โโโ ๐ linked-list/ # Linked Lists
โ โโโ ๐ index.mdx # Overview
โ โโโ ๐ 01-singly-linked-list.mdx # Singly Linked List
The file structure automatically generates clean URLs:
docs/computer-science/index.mdxโ/computer-sciencedocs/computer-science/data-structures/array/01-static-array.mdxโ/computer-science/data-structures/array/static-array
Folders:
- Use
kebab-casefor folder names:computer-science,data-structures - Each topic folder should have an
index.mdxfile as the overview
Files:
- Use
kebab-casefor file names:static-array.mdx - Use numeric prefixes for ordering:
01-,02- - The prefix is removed from the final URL automatically
Decide where your article fits in the existing structure:
# Example: Adding a new data structures topic
docs/computer-science/data-structures/new-topic/
# Example: Adding an article to existing topic
docs/computer-science/data-structures/array/03-new-array-type.mdxCreate a new .mdx file with proper Frontmatter:
# Create directory if needed
mkdir -p docs/computer-science/data-structures/new-topic
# Create the file
touch docs/computer-science/data-structures/new-topic/index.mdxWrite your article using Markdown/MDX:
---
title: "Your Article Title"
description: "Brief description of your article"
date: "2024-01-15"
tags:
- your-topic
- another-tag
---
# Your Article Title
## Introduction
Your content here...
## Section 1
More content...
## Code Examples
```javascript
// Your code here
function example() {
return "Hello World!";
}Summary of your article...
### Step 4: Test Your Changes
Validate your content with Fumadocs:
```bash
pnpm build
This command will:
- Validate your Frontmatter syntax
- Check for any MDX errors
- Generate the content for preview
Start the development server and preview your changes:
pnpm devVisit http://localhost:3000 to see your new content.
-
Commit your changes:
git add . git commit -m "Add: New article about [topic]"
-
Push to your fork:
git push origin feat/your-article
-
Create a Pull Request
- Accuracy: Ensure technical accuracy
- Clarity: Write clear, understandable explanations
- Completeness: Cover topics thoroughly
- Examples: Include practical code examples
- Updates: Keep content current
- Use proper heading hierarchy (h1 โ h2 โ h3)
- Include code blocks with syntax highlighting
- Use tables for comparisons
- Add alt text to images
- Use links to reference related content
// โ
Good: Clear, commented code
function binarySearch(arr, target) {
let left = 0;
let right = arr.length - 1;
while (left <= right) {
const mid = Math.floor((left + right) / 2);
if (arr[mid] === target) {
return mid; // Found target
} else if (arr[mid] < target) {
left = mid + 1; // Search right half
} else {
right = mid - 1; // Search left half
}
}
return -1; // Target not found
}- English: Use clear, professional English
- Chinese: Use formal, academic Chinese when needed
- Technical Terms: Use standard technical terminology
- Consistency: Maintain consistent terminology throughout
pnpm buildThis creates an optimized production build in the .next folder.
pnpm exportThe exported /out directory contains the static site, ready for deployment to GitHub Pages.
This repository is configured with GitHub Actions. Pushing to the main branch will automatically build and deploy to:
๐ https://involutionhell.github.io/
No manual operation required!
Important Reminder: Before starting any feature development, please first create or find a related issue in GitHub Issues. This helps to:
- Avoid Duplicate Work: Ensure no conflicts with others' ongoing development
- Align Development Direction: Determine specific requirements and implementation plans through discussion
- Transparent Progress: Keep the community informed about project development status
- Facilitate Collaboration: Allow other contributors to participate in discussions and provide suggestions
- Check Existing Issues: First search for related issues to avoid duplication
- Clear Description: Detail the feature requirements, expected outcomes, and use cases
- Add Labels: Use appropriate labels (e.g.,
enhancement,feature,discussion) - Link Development Branch: If development begins, link your development branch in the issue
- Feature Request (
feature): New feature requirements - Enhancement (
enhancement): Improvements to existing features - Bug Report (
bug): Bugs or issues found - Discussion (
discussion): Topics requiring community discussion
- Fork the repository
- Create a new branch for your changes
- Make your changes
- Test your changes
- Submit a Pull Request
We welcome the following types of contributions:
๐ Content Contributions
- Fix documentation content
- Add new tutorials or guides
- Translate content to other languages
- Improve existing articles
๐ Bug Fixes
- Fix typos and grammar errors
- Fix broken links
- Fix incorrect information
- Improve code examples
๐จ UI/UX Improvements
- Improve page styling
- Enhance user interactions
- Improve mobile responsiveness
- Add new features to the UI
Prioritize Fumadocs UI Component Library:
This project has migrated to Fumadocs UI as the primary UI framework. Please prioritize the following when developing UI-related features:
-
Use Fumadocs UI Components:
- Check Fumadocs UI documentation for available components
- Prefer built-in components over custom implementations
- Follow Fumadocs UI design standards and style guidelines
-
Maintain Design Consistency:
- Use unified color schemes and fonts
- Follow existing component styles and interaction patterns
- Maintain responsive design compatibility
-
New Feature Development:
- When creating issues for new features, clearly specify UI requirements
- Prioritize Fumadocs UI's extension features
- Discuss custom components with the team to maintain consistency
-
Testing Requirements:
- Ensure new UI features work across different devices and screen sizes
- Test theme switching (light/dark mode) compatibility
- Verify accessibility features
๐ ๏ธ Technical Improvements
- Improve build process
- Add new scripts or tools
- Optimize performance
- Improve accessibility
Please use one of the following formats for your PR title:
Add: New article about [topic] # ๆทปๅ ๆฐๆ็ซ
Fix: Typo in [file] # ไฟฎๅค้่ฏฏ
Update: Improve [feature] # ๆดๆฐๆน่ฟ
Docs: Update contribution guidelines # ๆๆกฃๆดๆฐ
Feat: Add [new feature] # ๆฐๅ่ฝ
A good PR description should include:
- What changes were made?
- Why were these changes needed?
- How were the changes tested?
- Any breaking changes?
## What
Added a new article about dynamic programming algorithms.
## Why
Students need better resources for understanding dynamic programming concepts.
## How
- Created new MDX file with comprehensive examples
- Tested content generation with `pnpm build`
- Verified rendering on local development server
## Testing
- Fumadocs validation passed
- No linting errors
- Previewed locally at `/computer-science/algorithms/dynamic-programming`-
Automated Checks
- GitHub Actions will run automated tests
- Fumadocs validation will check your content
- Linting will check code quality
-
Peer Review
- At least one maintainer will review your PR
- Reviewers may request changes
- You can update your PR based on feedback
-
Merge
- Once approved, a maintainer will merge your PR
- Your contribution will be automatically deployed
If you need help with contributing:
- ๐ง Issues: Open an issue for questions or bugs
- ๐ฌ Discussions: Use GitHub Discussions for general questions
- ๐ Documentation: Check this CONTRIBUTING.md file
- ๐ฅ Community: Join our community discussions
Contributors will be:
- Listed in the repository contributors
- Mentioned in release notes for significant contributions
- Recognized in our documentation
Please be respectful and inclusive in all interactions. We follow a code of conduct to ensure a positive community experience.
Thank you for contributing to Involution Hell Docs! ๐