Skip to content

Commit 08e7228

Browse files
committed
init
1 parent 13f02dd commit 08e7228

File tree

2 files changed

+55
-1
lines changed

2 files changed

+55
-1
lines changed

.github/workflows/test.yml

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,8 @@ jobs:
135135
linkcheck-internal:
136136
needs: setup
137137
runs-on: ubuntu-latest
138+
permissions:
139+
contents: read
138140
steps:
139141
- name: Checkout Repo
140142
uses: actions/checkout@v6
@@ -159,9 +161,20 @@ jobs:
159161
echo "node_modules not found, installing dependencies..."
160162
npm ci --prefer-offline --no-audit
161163
fi
164+
165+
- name: Build Site
166+
run: npm run build
162167

163168
- name: Check Internal Links
164-
run: npm run linkcheck-internal
169+
uses: lycheeverse/lychee-action@a8c4c7cb88f0c7386610c35eb25108e448569cb0 # v2.7.0
170+
with:
171+
args: >-
172+
--root-dir $GITHUB_WORKSPACE/.vercel/output/static
173+
--config lychee.toml
174+
'.vercel/output/static/**/*.html'
175+
fail: true
176+
format: markdown
177+
jobSummary: true
165178

166179
# Job 4: Check Types
167180
typecheck:

lychee.toml

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
# Lychee Link Checker Configuration
2+
# https://lychee.cli.rs/
3+
4+
# Only check local files (no network requests)
5+
offline = true
6+
7+
# Check links in code blocks
8+
include_verbatim = true
9+
10+
# Don't show progress bar (better for CI)
11+
no_progress = true
12+
13+
# Patterns to exclude from link checking
14+
exclude = [
15+
# CSS files
16+
'assets/.*\.css$',
17+
'_astro/.*\.css$',
18+
19+
# Dynamic pages with query params
20+
'/ccip/directory/.*',
21+
'/data-feeds/price-feeds/addresses\?.*',
22+
'/data-feeds/smartdata/addresses\?.*',
23+
24+
# Other files
25+
'sitemap-index\.xml',
26+
'@vite/client',
27+
28+
# Database connection strings
29+
'^postgresql:',
30+
'^mysql:',
31+
]
32+
33+
# Paths to exclude from scanning (won't check links on these pages)
34+
exclude_path = [
35+
'ccip/api-reference/evm/v162/.*',
36+
'ccip/api-reference/evm/v163/.*',
37+
]
38+
39+
# TODO: Re-enable fragment checking once Astro slug generation compatibility is resolved
40+
# include_fragments = true
41+
# Astro's heading ID generation and lychee's GitHub-style kebab-case expectations

0 commit comments

Comments
 (0)