Skip to content

Commit 63418c2

Browse files
committed
Organize wiki into group folders with auto-generated grouped sidebar
1 parent 458ca94 commit 63418c2

48 files changed

Lines changed: 50 additions & 11 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/skills/doc-write-component/SKILL.md

Lines changed: 19 additions & 0 deletions

.github/workflows/wiki-sync.yml

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,21 +20,30 @@ jobs:
2020
- name: Generate Sidebar
2121
run: |
2222
cd wiki
23-
echo "<!-- This file is auto-generated. Do not edit manually. -->" > _Sidebar.md
23+
echo "<!-- This file is auto-generated from the wiki/ folder structure. Do not edit manually. -->" > _Sidebar.md
2424
echo "" >> _Sidebar.md
2525
echo "**[Home](Home)**" >> _Sidebar.md
2626
echo "" >> _Sidebar.md
2727
28-
# Collect all .md files except Home.md, _Sidebar.md, and _Footer.md
29-
# Sort them alphabetically and generate sidebar links
30-
for file in $(ls *.md | grep -v -E '^(Home|_Sidebar|_Footer)\.md$' | sort -f); do
31-
# Get the page name (filename without .md extension)
28+
# Add root-level pages (except Home, _Sidebar, _Footer) sorted alphabetically
29+
for file in $(find . -maxdepth 1 -name '*.md' ! -name 'Home.md' ! -name '_Sidebar.md' ! -name '_Footer.md' | sed 's|^\./||' | sort -f); do
3230
page_name="${file%.md}"
33-
# Convert hyphens to spaces for display name
3431
display_name=$(echo "$page_name" | sed 's/-/ /g')
3532
echo "- [$display_name]($page_name)" >> _Sidebar.md
3633
done
3734
35+
# Add grouped pages from subdirectories
36+
for dir in $(find . -mindepth 1 -maxdepth 1 -type d | sed 's|^\./||' | sort -f); do
37+
echo "" >> _Sidebar.md
38+
echo "**$dir**" >> _Sidebar.md
39+
echo "" >> _Sidebar.md
40+
for file in $(find "$dir" -maxdepth 1 -name '*.md' | sed "s|^$dir/||" | sort -f); do
41+
page_name="${file%.md}"
42+
display_name=$(echo "$page_name" | sed 's/-/ /g')
43+
echo "- [$display_name]($page_name)" >> _Sidebar.md
44+
done
45+
done
46+
3847
- name: Sync to Wiki
3948
env:
4049
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -50,8 +59,11 @@ jobs:
5059
# Remove all existing wiki content (except .git)
5160
find /tmp/wiki-repo -maxdepth 1 -not -name '.git' -not -name '.' -delete 2>/dev/null || true
5261
53-
# Copy all wiki content from the repo
54-
cp wiki/* /tmp/wiki-repo/
62+
# Copy the generated sidebar
63+
cp wiki/_Sidebar.md /tmp/wiki-repo/
64+
65+
# Flatten all .md files from wiki/ (including subdirectories) to wiki repo root
66+
find wiki -name '*.md' ! -name '_Sidebar.md' -exec cp {} /tmp/wiki-repo/ \;
5567
5668
# Push changes if there are any
5769
cd /tmp/wiki-repo

0 commit comments

Comments
 (0)