## Guia de uso do Vue Styleguidist
Este é um guia passo a passo para usar o Vue Styleguidist, um softwere de docuemtação propria para vue.js.
1. Verifique se o Node.js está instalado:
Certifique-se de ter o Node.js instalado em seu sistema. Você pode verificar digitando `node -v` no terminal.
2. Instalação do Vue Styleguidist:
Abra o terminal e vá para a pasta raiz do seu projeto. Em seguida, execute o seguinte comando para instalar o Vue Styleguidist localmente como uma dependência de desenvolvimento:
```shell
npm install vue-styleguidist --save-dev
```
3. No diretório raiz do projeto, crie um arquivo chamado styleguide.config.js e adicione o seguinte teamplate basico:
```javascript
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin
const vueLoader = require('vue-loader')
const path = require('path')
const { defineConfig } = require('vue-styleguidist')
const transpileDependencies = [
'regexpu-core',
'strip-ansi',
'ansi-regex',
'ansi-styles',
'react-dev-utils',
'chalk',
'unicode-match-property-ecmascript',
'unicode-match-property-value-ecmascript',
'acorn-jsx',
'@znck[\\\\/]prop-types',
]
const docSiteUrl = process.env.DEPLOY_PRIME_URL || 'https://vue-styleguidist.github.io'
/** @type import("vue-styleguidist").Config */
module.exports = defineConfig({
title: 'Vue Styleguidist basic',
components: 'components/sections/layout/**/[A-Z]*.vue',
defaultExample: true,
sections: [
{
name: '',
content: '',
},
],
getComponentPathLine(componentPath) {
const componentFileName = path.basename(componentPath, '.vue')
const name =
componentFileName.toLowerCase() === 'index'
? path.basename(path.dirname(componentPath))
: componentFileName
return `import ${name} from '${componentPath.replace(/^src\//, 'my-library/dist/')}'`
},
version: '1.1.1',
compilerPackage: 'vue-inbrowser-compiler-sucrase',
webpackConfig: {
resolve: {
alias: {
'~': path.join(__dirname, './test'),
},
},
module: {
rules: [
{
test: /\.vue$/,
loader: 'vue-loader',
},
{
test: /\.js$/,
exclude: (modulePath) =>
(/node_modules/.test(modulePath) ||
/packages[\\/]vue-styleguidist[\\/]lib/.test(modulePath)) &&
!transpileDependencies.some((mod) =>
new RegExp(`node_modules[\\\\/]${mod}[\\\\/]`).test(modulePath)
),
use: {
loader: 'babel-loader',
options: {
sourceType: 'unambiguous',
presets: [
[
'@babel/preset-env',
{
useBuiltIns: 'usage',
corejs: 3,
targets: {
ie: '11',
},
},
],
],
comments: false,
},
},
},
{
test: /\.css$/,
use: ['style-loader', 'css-loader'],
},
],
},
plugins: [new vueLoader.VueLoaderPlugin()].concat(
process.argv.includes('--analyze') ? [new BundleAnalyzerPlugin()] : []
),
},
usageMode: 'expand',
exampleMode: 'expand',
styleguideDir: 'dist',
displayOrigins: true,
codeSplit: false,
})
```
4. Para adicionar um componente para ser documentado na sua pagina, pasta pegar o trecho do codigo:
```javascript
module.exports = defineConfig({
title: 'Vue Styleguidist basic',
components: 'components/sections/layout/**/[A-Z]*.vue',
defaultExample: true,
sections: [
{
name: 'Documentation',
content: 'docs/intro.md',
sections: [
{
name: 'Files',
content: 'docs/intro.md',
sections: [
{
name: 'First File',
content: 'docs/intro.md',
description: 'This is the first section description',
},
],
},
],
},
],
Ele criara uma documentação parecida com uma estrutua de pastas, onde cada 'section', representa um diretorio, cada 'name' representa o nome de cada diretorio, content seria o contedudo que você deseja documentar em estrutura markdown, que devem ficar em um pasta dentro da raiz do seu projeto chamada 'docs', cada uma com o nome do componente e o '.md' no final.
5. exemplo do .intro.md dentro da pasta docs:

6. pagina do exemplo acima:

7. Mas afinal como eu faço para gerar esse localhost? você deve usar o comando:
```
npm run styleguide
```
Após o uso do comando, você usará a porta de localhost que ele disponibilizará, que normalmente será: http://localhost:6060/.
8. Você pode estilizar e adicionar codigos, como:
BackToTheTopBtn.md:

localhost:
