56 lines
2.1 KiB
TypeScript
56 lines
2.1 KiB
TypeScript
import { defineConfig } from 'vitepress';
|
|
|
|
const versions = Array.from({ length: 100 }, (_, i) => {
|
|
const major = Math.floor(i / 10) + 1;
|
|
const minor = i % 10;
|
|
return `v${major}.${minor}`;
|
|
}).reverse();
|
|
|
|
export default defineConfig({
|
|
lang: 'ru-RU',
|
|
title: 'Frontend Style Guide',
|
|
description: 'Правила и стандарты разработки фронтенд-проектов на React/NextJS и TypeScript',
|
|
themeConfig: {
|
|
siteTitle: 'Frontend Style Guide',
|
|
nav: [
|
|
{
|
|
text: versions[0],
|
|
items: versions.map((v) => ({
|
|
text: v,
|
|
link: `/${v}/`,
|
|
})),
|
|
},
|
|
],
|
|
sidebar: [
|
|
{
|
|
text: 'Базовые правила',
|
|
items: [
|
|
{ text: 'Технологии и библиотеки', link: '/parts/1-tech-stack' },
|
|
{ text: 'Архитектура', link: '/parts/2-architecture' },
|
|
{ text: 'Стиль кода', link: '/parts/3-code-style' },
|
|
{ text: 'Именование', link: '/parts/4-naming' },
|
|
{ text: 'Документирование', link: '/parts/5-documentation' },
|
|
{ text: 'Типизация', link: '/parts/6-typing' },
|
|
],
|
|
},
|
|
{
|
|
text: 'Прикладные разделы',
|
|
items: [
|
|
{ text: 'Структура проекта', link: '/parts/7-project-structure' },
|
|
{ text: 'Компоненты', link: '/parts/8-0-components' },
|
|
{ text: 'Шаблоны и генерация кода', link: '/parts/8-1-templates-generation' },
|
|
{ text: 'Стили', link: '/parts/9-styles' },
|
|
{ text: 'Изображения', link: '/parts/10-images-sprites' },
|
|
{ text: 'SVG-спрайты', link: '/parts/17-svg-sprites' },
|
|
{ text: 'Видео', link: '/parts/11-video' },
|
|
{ text: 'API', link: '/parts/12-api' },
|
|
{ text: 'Stores', link: '/parts/13-stores' },
|
|
{ text: 'Хуки', link: '/parts/14-hooks' },
|
|
{ text: 'Шрифты', link: '/parts/15-fonts' },
|
|
{ text: 'Локализация', link: '/parts/16-localization' },
|
|
],
|
|
},
|
|
],
|
|
},
|
|
});
|