A VitePress plugin to generate a pretty linkcard with OGP.
You can see: A blog generated with this plugin | Docs by TypeDoc
This plugin was forked from markdown-it-link-to-card.
npm i -D vitepress-linkcard # npm
yarn add -D vitepress-linkcard # yarn
pnpm add -D vitepress-linkcard # pnpm
docs/.vitepress/config.tsimport { defineConfig } from 'vitepress'
import { linkToCardPlugin } from 'vitepress-linkcard'
import type { LinkToCardPluginOptions } from 'vitepress-linkcard'
export default defineConfig({
// ...
markdown: {
config: (md) => {
md.use<LinkToCardPluginOptions>(linkToCardPlugin, {
// target: "_self" // if needed
})
}
}
// ...
})
*.mdGenerates a linkcard when @: appended.
[example](@:https://example.com)
As shown in Usage, you can specify the target window in which to open a link.
_blank (default)_self_top_parentYou can customize:
By default, all colors are set to var(--vp-c-bg-soft).
docs/.vitepress/theme/custom.css/* For example: like "Features" in VitePress */
.vitepress-linkcard-container {
border-color: #00000000 !important;
background-color: var(--vp-c-bg-soft) !important;
}
.vitepress-linkcard-container:hover {
border-color: var(--vp-c-brand-1) !important;
background-color: var(--vp-c-bg-soft) !important;
}
docs/.vitepress/theme/index.tsimport DefaultTheme from 'vitepress/theme-without-fonts'
import type { Theme as ThemeConfig } from 'vitepress'
import './custom.css'
const Theme: ThemeConfig = {
extends: DefaultTheme
}
export default {
...Theme
}
.linkcard_cache.jsonIt is generated automatically in docs/ and cache all the parsed metadata.
You can move it to root dir if needed.
github.comWhen the domain is github.com, trimming is performed as shown in the following example to avoid duplication of the title and description.
| Title | Description | |
|---|---|---|
| Before | GitHub - asumo-1xts/vitepress-linkcard: A VitePress plugin to generate a pretty linkcard. | A VitePress plugin to generate a pretty linkcard. Contribute to asumo-1xts/vitepress-linkcard development by creating an account on GitHub. |
| After | asumo-1xts/vitepress-linkcard | A VitePress plugin to generate a pretty linkcard. |