Skip to content

Commit

Permalink
build: migrate docs into a separate repo
Browse files Browse the repository at this point in the history
  • Loading branch information
meteorlxy committed Dec 3, 2023
0 parents commit 4b4cfcd
Show file tree
Hide file tree
Showing 164 changed files with 27,902 additions and 0 deletions.
13 changes: 13 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# editorconfig.org
root = true

[*]
indent_style = space
indent_size = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

[*.md]
trim_trailing_whitespace = false
6 changes: 6 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
!.vuepress/
!.*.js
.cache/
.temp/
node_modules/
dist/
13 changes: 13 additions & 0 deletions .eslintrc.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
module.exports = {
root: true,
extends: 'vuepress',
overrides: [
{
files: ['*.ts', '*.vue'],
extends: 'vuepress-typescript',
parserOptions: {
project: ['tsconfig.json'],
},
},
],
}
10 changes: 10 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
* text eol=lf
*.txt text eol=crlf

*.png binary
*.jpg binary
*.jpeg binary
*.ico binary
*.tff binary
*.woff binary
*.woff2 binary
16 changes: 16 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: Bug Report
description: Create a report to help us improve
title: '[Bug report] '
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- type: textarea
id: bug-description
attributes:
label: Description
description: A clear and concise description of what the bug is. If applicable, add screenshots to help explain your problem. If you intend to submit a PR for this issue, tell us in the description. Thanks!
placeholder: Bug description
validations:
required: true
5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Question & Discussion
url: https://github.com/vuepress/docs/discussions
about: Please ask and answer questions here.
53 changes: 53 additions & 0 deletions .github/workflows/check-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
name: check-docs

on:
push:
branches:
- main
pull_request:
branches:
- main
workflow_dispatch:

jobs:
check-docs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
node: ['18', '20']
bundler: ['vite', 'webpack']

runs-on: ${{ matrix.os }}

steps:
- uses: actions/checkout@v4

- name: Install pnpm
uses: pnpm/action-setup@v2

- name: Use Node.js ${{ matrix.node }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node }}
cache: pnpm

- name: Install dependencies
run: pnpm install --frozen-lockfile

- name: Build source code
run: pnpm build

- name: Build docs with ${{ matrix.bundler }}
run: pnpm docs:build
env:
DOCS_BUNDLER: ${{ matrix.bundler }}

check-docs-result:
if: ${{ always() }}
name: check-docs result
runs-on: ubuntu-latest
needs: [check-docs]
steps:
- if: ${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') }}
run: exit 1
44 changes: 44 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: docs

on:
push:
branches:
- main
workflow_dispatch:

jobs:
docs:
runs-on: ubuntu-latest

env:
DOCS_GA_ID: G-CTB8FQ7VMW
NODE_VERSION: '18'

steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Install pnpm
uses: pnpm/action-setup@v2

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
cache: pnpm

- name: Install dependencies
run: pnpm install --frozen-lockfile

- name: Build documentation site
run: pnpm docs:build

- name: Deploy to GitHub Pages
uses: crazy-max/ghaction-github-pages@v4
with:
repo: vuepress/vuepress.github.io
target_branch: main
build_dir: docs/.vuepress/dist
env:
GH_PAT: ${{ secrets.GH_PAGES_TOKEN }}
17 changes: 17 additions & 0 deletions .github/workflows/issue-commented.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: issue-commented

on:
issue_comment:
types: [created]

jobs:
issue-commented:
name: remove stale on commented
if: contains(github.event.issue.labels.*.name, 'stale')
runs-on: ubuntu-latest
steps:
- uses: actions-cool/issues-helper@v3
with:
actions: 'remove-labels'
token: ${{ secrets.GITHUB_TOKEN }}
labels: 'stale'
42 changes: 42 additions & 0 deletions .github/workflows/issue-daily.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: issue-daily

on:
schedule:
- cron: '0 0 * * *'

jobs:
issue-label-stale:
name: label stale issues
runs-on: ubuntu-latest
steps:
- uses: actions-cool/issues-helper@v3
with:
actions: 'check-inactive'
token: ${{ secrets.GITHUB_TOKEN }}
inactive-day: 15
inactive-label: 'stale'
exclude-labels: 'bug, documentation, enhancement, feature, help wanted, need reproduction, need review, stale'
body: |
This issue is marked as `stale` because it has not had recent activity. Issues marked with `stale` will be closed if they have no activity within 7 days.
issue-close-stale:
name: close stale issues
runs-on: ubuntu-latest
steps:
- uses: actions-cool/issues-helper@v3
with:
actions: 'close-issues'
token: ${{ secrets.GITHUB_TOKEN }}
labels: 'stale'
inactive-day: 7

issue-close-need-reproduction:
name: close need-reproduction issues
runs-on: ubuntu-latest
steps:
- uses: actions-cool/issues-helper@v3
with:
actions: 'close-issues'
token: ${{ secrets.GITHUB_TOKEN }}
labels: 'need reproduction'
inactive-day: 7
30 changes: 30 additions & 0 deletions .github/workflows/issue-labeled.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: issue-labeled

on:
issues:
types: [labeled]

jobs:
issue-invalid:
name: close invalid issue
if: github.event.label.name == 'invalid'
runs-on: ubuntu-latest
steps:
- uses: actions-cool/issues-helper@v3
with:
actions: 'close-issue, create-comment'
token: ${{ secrets.GITHUB_TOKEN }}
body: |
Hello @${{ github.event.issue.user.login }}. This issue is marked as `invalid` and closed. Please follow the issue template.
issue-need-reproduction:
name: need reproduction
if: github.event.label.name == 'need reproduction'
runs-on: ubuntu-latest
steps:
- uses: actions-cool/issues-helper@v3
with:
actions: 'create-comment'
token: ${{ secrets.GITHUB_TOKEN }}
body: |
Hello @${{ github.event.issue.user.login }}. Please provide a [minimal reproduction](https://stackoverflow.com/help/minimal-reproducible-example) using a GitHub repository or [v2.vuepress.vuejs.org/new](https://v2.vuepress.vuejs.org/new). Issues marked with `need reproduction` will be closed if they have no activity within 7 days.
13 changes: 13 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# VuePress files
docs/.vuepress/.temp/
docs/.vuepress/.cache/
docs/.vuepress/dist/

# Node modules
node_modules/

# MacOS Desktop Services Store
.DS_Store

# Log files
*.log
4 changes: 4 additions & 0 deletions .husky/commit-msg
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"

pnpm commitlint --edit $1
4 changes: 4 additions & 0 deletions .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"

pnpm lint-staged
3 changes: 3 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
pnpm-lock.yaml
*.html
*.md
7 changes: 7 additions & 0 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"recommendations": [
"dbaeumer.vscode-eslint",
"esbenp.prettier-vscode",
"vue.volar"
]
}
43 changes: 43 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
{
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true,
"editor.insertSpaces": true,
"editor.tabSize": 2,
"files.encoding": "utf8",
"files.eol": "\n",
"files.trimFinalNewlines": true,
"files.trimTrailingWhitespace": true,
"[markdown]": {
"files.trimTrailingWhitespace": false
},
"typescript.tsdk": "node_modules/typescript/lib",
"eslint.validate": [
"javascript",
"javascriptreact",
"typescript",
"typescriptreact",
"vue"
],
"cSpell.words": [
"composables",
"devtool",
"docsearch",
"envinfo",
"esbuild",
"frontmatter",
"globby",
"gtag",
"mdit",
"nprogress",
"prefetch",
"preload",
"prismjs",
"shiki",
"slugify",
"unmount",
"vuejs",
"vuepress",
"vueuse",
"zoomable"
]
}
15 changes: 15 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# VuePress Documentation Contributing Guide

## Overview

VuePress documentation is powered by VuePress itself, which is built from the source code of this repository.

All the markdown source files are placed in `docs` directory. We are maintaining two translations:

- English (en-US) in `/` path
- Chinese (zh-CN) in `/zh/` path

We have two different deployments:

- Release deployment powered by [Netlify](https://www.netlify.com). This deployment is built from the latest released version, so users will not see unreleased changes. The domain name is [https://v2.vuepress.vuejs.org](https://v2.vuepress.vuejs.org).
- Developer deployment powered by [GitHub Pages](https://pages.github.com). This deployment is built from the latest commit, so developers could preview the latest changes. The domain name is [https://vuepress.github.io](https://vuepress.github.io).
15 changes: 15 additions & 0 deletions CONTRIBUTING_zh.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# VuePress 文档贡献指南

## 概览

VuePress 的文档是由 VuePress 自己驱动的,是由该仓库中的源码构建而来。

所有的 Markdown 源文件都放置在 `docs` 目录下。我们维护了两种翻译:

- 英语 (en-US) 在 `/` 路径下
- 中文 (zh-CN) 在 `/zh/` 路径下

我们部署了两套站点:

-[Netlify](https://www.netlify.com) 部署的 Release 版本。该站点是从最新发布的版本中构建而来,因此用户不会看到未发布的改动。域名为 [https://v2.vuepress.vuejs.org](https://v2.vuepress.vuejs.org)
-[GitHub Pages](https://pages.github.com) 部署的 Developer 版本。该站点是从最新的提交中构建而来,因此开发者可以预览最新的改动。域名为 [https://vuepress.github.io](https://vuepress.github.io)
21 changes: 21 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
The MIT License (MIT)

Copyright (c) 2018-present, VuePress Community

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
Loading

0 comments on commit 4b4cfcd

Please sign in to comment.