docs-build-and-verify
GitHub用于构建、预览和验证 Flet 文档网站,自动检测并报告失效链接、缺失图片及未解析的 reST 引用。
Trigger Scenarios
Install
npx skills add flet-dev/flet --skill docs-build-and-verify -g -y
SKILL.md
Frontmatter
{
"name": "docs-build-and-verify",
"description": "Use when asked to build, preview, or verify the Flet documentation website, including checking for broken links, broken images, and unresolved reST cross-references."
}
Docs Build and Verification
Prerequisites
Node.js 20 is required:
nvm use 20
Build
Full production build (includes broken link detection):
cd website && yarn build
Dev server with hot reload:
cd website && yarn start
Regenerate API data and sidebars only (no Docusaurus build):
cd website && yarn crocodocs:generate
Check Broken Links
yarn build automatically reports broken links and anchors. The build fails if any are found.
Check Broken Images
Run this after yarn build to find images referenced in HTML that don't exist:
cd website && python3 -c "
import re, os, glob
build_dir = 'build'
img_re = re.compile(r'<img[^>]+src=\"(/[^\"]+)\"', re.IGNORECASE)
broken = []
for html_file in sorted(glob.glob(f'{build_dir}/docs/**/index.html', recursive=True)):
page = html_file.replace(build_dir + '/', '').replace('/index.html', '')
content = open(html_file).read()
for match in img_re.finditer(content):
src = match.group(1)
if src.startswith('http') or src.startswith('data:'):
continue
file_path = os.path.join(build_dir, src.lstrip('/'))
if not os.path.exists(file_path):
broken.append((page, src))
if broken:
print(f'Found {len(broken)} broken images:')
for page, src in broken:
print(f' {page}: {src}')
else:
print('No broken images found!')
"
Check Unresolved reST Cross-References
After building, check for reST roles that failed to resolve and appear as raw text:
cd website && grep -r ':attr:\|:class:\|:meth:\|:func:' build/docs/ --include='*.html' -l
If any files are listed, those pages have unresolved cross-references that render as plain text instead of links.
Version History
- 8f74fe9 Current 2026-08-20 12:12


