Configuración
Esta página describe las opciones de configuración disponibles en VitePress.
Archivo de Configuración
La configuración se define en docs/.vitepress/config.js:
import { defineConfig } from 'vitepress'
export default defineConfig({
// Opciones del sitio
title: 'Mi Documentación',
description: 'Descripción del sitio',
// Opciones del tema
themeConfig: {
// Configuración del tema
}
})Opciones del Sitio
title
- Tipo:
string - Por defecto:
'VitePress'
El título del sitio. Se mostrará en la barra de navegación y como sufijo del título de la página.
export default defineConfig({
title: 'Mi Documentación'
})description
- Tipo:
string - Por defecto:
''
La descripción del sitio. Se usará como meta tag.
export default defineConfig({
description: 'Una documentación increíble'
})lang
- Tipo:
string - Por defecto:
'en-US'
El atributo lang del sitio.
export default defineConfig({
lang: 'es-ES'
})base
- Tipo:
string - Por defecto:
'/'
La URL base donde se desplegará el sitio.
export default defineConfig({
base: '/mi-proyecto/'
})head
- Tipo:
HeadConfig[]
Tags adicionales para insertar en el <head>.
export default defineConfig({
head: [
['link', { rel: 'icon', href: '/favicon.ico' }],
['meta', { name: 'theme-color', content: '#3eaf7c' }]
]
})Opciones del Tema
nav
- Tipo:
NavItem[]
Configuración del menú de navegación.
themeConfig: {
nav: [
{ text: 'Inicio', link: '/' },
{ text: 'Guía', link: '/guia/' },
{
text: 'Dropdown',
items: [
{ text: 'Item A', link: '/item-a' },
{ text: 'Item B', link: '/item-b' }
]
}
]
}sidebar
- Tipo:
Sidebar
Configuración de la barra lateral.
themeConfig: {
sidebar: [
{
text: 'Guía',
items: [
{ text: 'Introducción', link: '/guia/introduccion' },
{ text: 'Comenzar', link: '/guia/comenzar' }
]
}
]
}Sidebar Múltiple
themeConfig: {
sidebar: {
'/guia/': [
{
text: 'Guía',
items: [
{ text: 'Introducción', link: '/guia/introduccion' }
]
}
],
'/api/': [
{
text: 'API',
items: [
{ text: 'Referencia', link: '/api/referencia' }
]
}
]
}
}Sidebar Colapsable
themeConfig: {
sidebar: [
{
text: 'Sección',
collapsed: false,
items: [
{ text: 'Item 1', link: '/item-1' }
]
}
]
}socialLinks
- Tipo:
SocialLink[]
Enlaces a redes sociales.
themeConfig: {
socialLinks: [
{ icon: 'github', link: 'https://github.com/' },
{ icon: 'twitter', link: 'https://twitter.com/' },
{ icon: 'discord', link: 'https://discord.com/' }
]
}footer
- Tipo:
Footer
Configuración del pie de página.
themeConfig: {
footer: {
message: 'Publicado bajo Licencia MIT.',
copyright: 'Copyright © 2025-presente'
}
}search
- Tipo:
SearchOptions
Configuración de búsqueda.
themeConfig: {
search: {
provider: 'local',
options: {
placeholder: 'Buscar...',
translations: {
button: {
buttonText: 'Buscar',
buttonAriaLabel: 'Buscar'
},
modal: {
noResultsText: 'No se encontraron resultados',
resetButtonTitle: 'Limpiar búsqueda',
footer: {
selectText: 'seleccionar',
navigateText: 'navegar'
}
}
}
}
}
}editLink
- Tipo:
EditLink
Configuración del enlace de edición.
themeConfig: {
editLink: {
pattern: 'https://github.com/user/repo/edit/main/docs/:path',
text: 'Editar esta página en GitHub'
}
}lastUpdated
- Tipo:
LastUpdated
Configuración de la última actualización.
themeConfig: {
lastUpdated: {
text: 'Actualizado el',
formatOptions: {
dateStyle: 'full',
timeStyle: 'medium'
}
}
}logo
- Tipo:
string
Logo del sitio.
themeConfig: {
logo: '/logo.svg'
}siteTitle
- Tipo:
string | false
Texto del título del sitio en la barra de navegación. Si es false, el título estará oculto.
themeConfig: {
siteTitle: 'Mi Sitio'
}Markdown
markdown.lineNumbers
- Tipo:
boolean - Por defecto:
false
Mostrar números de línea en bloques de código.
export default defineConfig({
markdown: {
lineNumbers: true
}
})markdown.theme
- Tipo:
string | { light: string, dark: string } - Por defecto:
'material-theme-palenight'
Tema de resaltado de sintaxis.
export default defineConfig({
markdown: {
theme: {
light: 'github-light',
dark: 'github-dark'
}
}
})Build
build.outDir
- Tipo:
string - Por defecto:
'.vitepress/dist'
Directorio de salida para la construcción.
export default defineConfig({
build: {
outDir: '../dist'
}
})Ejemplo Completo
Aquí hay un ejemplo de configuración completa:
import { defineConfig } from 'vitepress'
export default defineConfig({
title: 'Mi Documentación',
description: 'Documentación completa del proyecto',
lang: 'es-ES',
base: '/',
head: [
['link', { rel: 'icon', href: '/favicon.ico' }],
['meta', { name: 'theme-color', content: '#3eaf7c' }]
],
markdown: {
lineNumbers: true,
theme: {
light: 'github-light',
dark: 'github-dark'
}
},
themeConfig: {
logo: '/logo.svg',
siteTitle: 'Mi Proyecto',
nav: [
{ text: 'Inicio', link: '/' },
{ text: 'Guía', link: '/guia/' },
{ text: 'API', link: '/api/' }
],
sidebar: {
'/guia/': [
{
text: 'Introducción',
collapsed: false,
items: [
{ text: 'Qué es', link: '/guia/introduccion' },
{ text: 'Comenzar', link: '/guia/inicio-rapido' }
]
}
]
},
socialLinks: [
{ icon: 'github', link: 'https://github.com/' }
],
footer: {
message: 'Publicado bajo Licencia MIT',
copyright: 'Copyright © 2025-presente'
},
search: {
provider: 'local'
},
editLink: {
pattern: 'https://github.com/user/repo/edit/main/docs/:path',
text: 'Editar en GitHub'
},
lastUpdated: {
text: 'Actualizado el',
formatOptions: {
dateStyle: 'short',
timeStyle: 'short'
}
}
}
})