chore: add browser optimizations

- Add browserslist (Chrome 111+, Edge 111+, Firefox 111+, Safari 16.4+)
- Add loading=lazy and decoding=async to markdown images for better LCP

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-02-14 00:09:59 +08:00
parent d5ea352775
commit 240d44842a
2 changed files with 5 additions and 1 deletions

View File

@@ -103,7 +103,7 @@ export default makeSource({
[rehypeAutolinkHeadings, { behavior: 'wrap' }],
/**
* Rewrite markdown image src from relative "../assets/..." to
* absolute "/assets/..." so they are served from Next.js public/.
* absolute "/assets/..." and add lazy loading for cross-browser performance.
*/
() => (tree: any) => {
visit(tree, 'element', (node: any) => {
@@ -118,6 +118,9 @@ export default makeSource({
} else if (src.startsWith('assets/')) {
node.properties.src = '/' + src.replace(/^\/?/, '');
}
// Lazy load images for better LCP and bandwidth (Chrome, Firefox, Safari, Edge)
node.properties.loading = 'lazy';
node.properties.decoding = 'async';
}
});
}