Skip to content

Repository files navigation

OurBook

created by vuepress

how to run

nvm use
npm ci
npm run dev

visit localhost:8080

本项目当前使用 Node.js 24 LTS、VuePress 2 和 Vite,站点使用 VuePress 2 默认主题。

当前主题已启用 VuePress 2 的本地搜索、正文关键词索引、图片放大、代码复制、返回顶部、阅读进度和标题高亮等能力。

静态部署

项目默认使用 GitHub Actions 构建并发布到 GitHub Pages:推送到 master 后,Actions 会在 Node.js 24 环境中执行 npm ci、内容/资源审计和 npm run build,再上传 dist。首次启用时,在仓库 Settings → Pages → Build and deployment 中选择 GitHub Actions;自定义域名 www.wenkers.cn 也在这里配置。

发布统一使用 GitHub Actions;deploy.sh 仅保留作历史手动兜底,不应在日常流程中使用,因为它会通过 SSH 强制推送 gh-pages

提交前可运行:

npm run audit
npm run build

也可以一次执行完整检查:

npm run check

how to deploy

提交到 master 即可触发 GitHub Actions 发布;不再使用本地强制推送 gh-pages 的方式。

how to write

这里主要讲一些页面配置的东西。

首先关于vuepress的使用,大部分内容可以在其官网上进行查看https://vuepress.vuejs.org/zh/

关于本页面的编写,需要同步进行配置几个地方。

基于遵守vuepress的路径解析原理,该项目中所有文件路径都写成/dir/,头部和尾部都需要带上/符号

地区配置

需要在/docs/university/目录中增加城市的markdown文件,例如beijing.md,然后需要在/docs/.vuepress/area.js/增加城市信息,现有的城市信息已经配置完善不需要再配置

var area = [
  {
    title: '华北地区',
    collapsable: false,
    children: [
      'beijing'
    ]
  }
];

学校配置

结构的约定(可以跳过)

每一个学校以学校英文简称在/docs/下创建一个文件夹,例如/docs/pku/;如果存在重名则需要写成有区别的名字,我们约定重复的简称后面加_{数字},例如北京大学/docs/pku/,假设存在北京没有英文名大学简称也是pku,那么路径为/docs/pku_2/,并且一定要有一篇README.md作为根路由。

同时学校的的目录结构也需要在/docs/.vuepress/sidebar.js中进行配置,例如:

var sidebar = {
  '/pku/': [{
    title: '北京大学',
    collapsable: false,
    children: [
      '',
      'article'
    ]
  }],
};

这样做的目的是为了将各个学校的每一篇文章都拆成一个markdown文件,以便进行更为颗粒化的管理,可以在本地运行后,点击http://localhost:8080/OurBook/pku/查看侧边栏配置的修改。

生成器

首先在/docs/.vuepress/univ.js中配置所需要添加的大学的名字与简称;

然后可以在script文件夹中找到genFile.js,使用以下命令可以自行生成默认文件结构。

node genFile.js

现已经更改为脚本自动扫文件目录生成,无需再进行配置

文章结构

这里约定每一篇文章都是单独的markdown文件,每篇文章需要有一级标题,作者使用>符号包起来,其余具体的可以看看markdown的语法

新文章的 frontmatter 和资源管理约定见内容管理约定

备份计划

关于过去的已经有的文章,但是太过久远已经失效的,在每所学校路径下都有一个备份文件夹,写做/docs/pku/backup/,里面存放该项目所涉及的所有的失去时效性的文章以作参考。

自定义页面

由于本项目使用vuepress构建,所以每个md文件都会被编译为.vue文件,所以可以在markdown当中直接书写页面,具体的使用方式可以参照vuepress自定义页面来进行书写

主题与客户端扩展

项目当前使用 VuePress 2 默认主题,实际生效的客户端扩展位于 docs/.vuepress/client.js,全局样式位于 docs/.vuepress/styles/index.scssdocs/.vuepress/theme/ 中的 VuePress 1 主题源码仅作历史参考,未被当前配置加载。

排版指南

中文markdown排版指南

About

《我们眼中的大学》公益活动

Resources

Stars

8 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages