vuepress搭建个人博客以及部署

vuepress,Vue 驱动的静态网站生成器,以 Markdown 为中心的项目结构,以最少的配置帮助你专注于写作。
vuepress官网
vuepress存在很多主题,也可以自定义设计主题,上传npm使用
这里采用vuepress-theme-hope主题模板进行制作
vuepress-theme-hope

创建项目命令yarn/npm/pnpm都可以

yarn create vuepress-theme-hope my-docs

这里记录几个关键点

一、目录结构

在这里插入图片描述
src/.vuepress: 用于存放全局的配置、组件、静态资源等。
src/.vuepress/components: 该目录中的 Vue 组件将会被自动注册为全局组件。
src/.vuepress/theme: 用于存放本地主题。
src/.vuepress/styles: 用于存放样式相关的文件。
src/.vuepress/styles/index.styl: 将会被自动应用的全局样式文件,会生成在最终的 CSS 文件结尾,具有比默认样式更高的优先级。
src/.vuepress/styles/palette.styl: 用于重写默认颜色常量,或者设置新的 stylus 颜色常量。
src/.vuepress/public: 静态资源目录。
src/.vuepress/templates: 存储 HTML 模板文件。
src/.vuepress/templates/dev.html: 用于开发环境的 HTML 模板文件。
src/.vuepress/templates/ssr.html: 构建时基于 Vue SSR 的 HTML 模板文件。
src/.vuepress/config.js: 配置文件的入口文件,也可以是 YML 或 toml。
src/.vuepress/enhanceApp.js: 客户端应用的增强。
以上就是基础的文件结构

二、重点文件分析

配置文件config.js

import { defineUserConfig } from "vuepress";
import theme from "./theme.js";export default defineUserConfig({base: "/docs/",lang: "zh-CN",title: "云风网",description: "云风的知识库",theme,// 和 PWA 一起启用// shouldPrefetch: false,
});

导航栏配置navbar.js

import { navbar } from "vuepress-theme-hope";export default navbar(["/",{text: "node案例",icon: "pen-to-square",prefix: "/node/",children: ["webBuild",],},// "/node/",{text: "云风网",icon: "book",link: "http://www.niech.cn/",},{text: "CSDN",icon: "book",link: "https://blog.csdn.net/qq_43206280/",}
]);

主题配置theme.js

import { hopeTheme } from "vuepress-theme-hope";
import navbar from "./navbar.js";
import sidebar from "./sidebar.js";
import { MR_HOPE_AVATAR } from "./logo.js";export default hopeTheme({hostname: "https://mister-hope.github.io",author: {name: "Niech",url: "http://www.niech.cn",},iconAssets: "fontawesome-with-brands",logo: "/logo.png",repo: "vuepress-theme-hope/vuepress-theme-hope",docsDir: "src",// 导航栏navbar,// 侧边栏sidebar,// 页脚footer: "默认页脚",displayFooter: true,// 博客相关blog: {description: "一个前端开发者",intro: "/intro.html",medias: {GitHub: "https://github.com/nch1994/",Gitee: "https://gitee.com/niech_project"},},// 加密配置encrypt: {config: {"/demo/encrypt.html": ["1234"],},},// 多语言配置metaLocales: {editLink: "",},// 如果想要实时查看任何改变,启用它。注: 这对更新性能有很大负面影响// hotReload: true,// 在这里配置主题提供的插件plugins: {blog: true,search: true,// 在启用之前需要安装 @waline/client// 警告: 这是一个仅供演示的测试服务器,在生产环境中请自行部署并使用自己的服务器!// comment: {//   provider: "Waline",//   serverURL: "https://waline-comment.vuejs.press",// },components: {components: ["Badge", "VPCard"],},// 此处开启了很多功能用于演示,你应仅保留用到的功能。mdEnhance: {align: true,attrs: true,codetabs: true,component: true,demo: true,figure: true,imgLazyload: true,imgSize: true,include: true,mark: true,stylize: [{matcher: "Recommended",replacer: ({ tag }) => {if (tag === "em")return {tag: "Badge",attrs: { type: "tip" },content: "Recommended",};},},],sub: true,sup: true,tabs: true,vPre: true,search: true,copyCode:{},// 在启用之前安装 chart.js// chart: true,// insert component easily// 在启用之前安装 echarts// echarts: true,// 在启用之前安装 flowchart.ts// flowchart: true,// gfm requires mathjax-full to provide tex support// gfm: true,// 在启用之前安装 katex// katex: true,// 在启用之前安装 mathjax-full// mathjax: true,// 在启用之前安装 mermaid// mermaid: true,// playground: {//   presets: ["ts", "vue"],// },// 在启用之前安装 reveal.js// revealJs: {//   plugins: ["highlight", "math", "search", "notes", "zoom"],// },// 在启用之前安装 @vue/repl// vuePlayground: true,// install sandpack-vue3 before enabling it// sandpack: true,},// 如果你需要 PWA。安装 vuepress-plugin-pwa2 并取消下方注释// pwa: {//   favicon: "/favicon.ico",//   cacheHTML: true,//   cachePic: true,//   appendBase: true,//   apple: {//     icon: "/assets/icon/apple-icon-152.png",//     statusBarColor: "black",//   },//   msTile: {//     image: "/assets/icon/ms-icon-144.png",//     color: "#ffffff",//   },//   manifest: {//     icons: [//       {//         src: "/assets/icon/chrome-mask-512.png",//         sizes: "512x512",//         purpose: "maskable",//         type: "image/png",//       },//       {//         src: "/assets/icon/chrome-mask-192.png",//         sizes: "192x192",//         purpose: "maskable",//         type: "image/png",//       },//       {//         src: "/assets/icon/chrome-512.png",//         sizes: "512x512",//         type: "image/png",//       },//       {//         src: "/assets/icon/chrome-192.png",//         sizes: "192x192",//         type: "image/png",//       },//     ],//     shortcuts: [//       {//         name: "Demo",//         short_name: "Demo",//         url: "/demo/",//         icons: [//           {//             src: "/assets/icon/guide-maskable.png",//             sizes: "192x192",//             purpose: "maskable",//             type: "image/png",//           },//         ],//       },//     ],//   },// },},
});

公共侧边栏配置sidebar.js

import { sidebar } from "vuepress-theme-hope";export default sidebar({"/": [// "",// {//   text: "如何使用",//   icon: "laptop-code",//   prefix: "demo/",//   link: "demo/",//   children: "structure",// },// {//   text: "文章",//   icon: "book",//   prefix: "posts/",//   children: "structure",// },// "intro",// {//   text: "幻灯片",//   icon: "person-chalkboard",//   link: "https://plugin-md-enhance.vuejs.press/zh/guide/content/revealjs/demo.html",// },],
});

配置完npm run docs:dev就可以看到效果了
在这里插入图片描述
在这里插入图片描述
接下来就在.md编辑自己想要写的文章
1、src目录下新建一个文件夹,自己规划一下文件名称,我这里取名node,主要存放node相关文档
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

保存渲染之后就是现在这样
接下来就是打包部署npm run docs:build
tips:打包根目录在config.js里面进行配置
如果直接域名访问base: “/”
如果不是,这个地址需要对应,比如base: "/docs/"对应的是http://www.niech.cn/docs/

如果想要部署到gitee或者github
新建一个仓库后选择服务,里面有类似page文档的功能,按照步骤创建,最后启动就完成了。
云风的知识库

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/438428.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AIGC专题:2024年金融业生成式AI应用报告

今天分享的是AIGC系列深度研究报告:《AIGC专题:2024年金融业生成式AI应用报告》。 (报告出品方:度小满) 前言 毫无疑问,生成式人工智能是2023年全球最具影响力的创新科技,它代表着一种范式转…

赛氪荣获“2023天津高新技术企业大会支持单位”

1月23日上午,2023天津市高新技术企业大会新闻发布会在天开高教科技园核心区综合服务中心召开,市高企协以及来自高校、企业、社会组织等80余人现场参会。 大会组委会秘书长张博航介绍到:“本次大会将实现自开办以来的多个首次,首次…

GoogLeNet模型详解

模型介绍 GoogLeNet是谷歌工程师设计的深度神经网络结构,于2014年在ImageNet比赛中取得了冠军。它的设计特点在于既有深度,又在横向上拥有“宽度”,并采用了一种名为Inception的核心子网络结构。这个网络名字中的“GoogLeNet”是对LeNet的致…

sql优化的方法

目录 一、准备数据 1.1、创建表结构 1.2、创建存储过程 二、索引介绍 2.1、类型介绍 2.2、建立索引 2.3、建立复合索引 2.4、查看所有建立的索引 2.5、删除索引 三、EXPLAIN分析参数说明 四、SQL优化案例 4.1、避免使用SELECT * 4.2、慎用UNION关键字 4.4、避免使…

响应式架构设计:性能更高更快的架构模式(框架部分后续再完善)

文章目录 一、初识响应式1、什么是Reactive(响应式)2、响应式编程(Reactive Programming)的含义3、响应式编程的特点4、响应式编程的主要模式5、响应式编程的核心元素(1)流(2)传播变…

Nginx 主动检查 被动检查

被动检查 proxy_next_upstream http {upstrean httpget {//max_fail5,失败5词,直接下线 down,//fail_timeout10s, 10s之后 重新上线 up//fail_timeout10s, max_fail5,5次失败在10s内,下线,server IP:80 max_fails5 fail_time…

除毛可以用宠物空气净化器吗?猫用空气净化器质量高的品牌推荐

如今,越来越多的家庭选择养宠物,因为它们给家里带来了温馨和快乐。然而,宠物也可能带来异味和空气中的浮毛,这可能会给我们的健康带来问题,成为一个困扰。 为了解决家里的异味问题,尤其是宠物的排泄物味道…

DMA 和 零拷贝技术 到 网络大文件传输优化

文章目录 DMA 控制器的发展无 DMA 控制器 IO 过程DMA 控制器 传统文件传输性能有多糟糕?如何优化文件传输性能零拷贝技术mmap writesendfileSG-DMA(The Scatter-Gather Direct Memory Access) 零拷贝技术的应用 大文件传输应该用什么方式Pag…

应急响应-流量分析

在应急响应中,有时需要用到流量分析工具,。当需要看到内部流量的具体情况时,就需要我们对网络通信进行抓包,并对数据包进行过滤分析,最常用的工具是Wireshark。 Wireshark是一个网络封包分析软件。网络封包分析软件的…

qtcreator使用qwt库

先配置好.pro文件,再去ui界面拖拽控件 ui界面会更改配置,故顺序错一个,就凉了,重来吧 准备:库,库头文件 库文件:路径如下 头文件:路径如下 鼠标->右键 (有些不用勾…

构建知识图谱:从技术到实战的完整指南

目录 一、概述二、知识图谱的基础理论定义与分类核心组成历史与发展 三、知识获取与预处理数据源选择数据清洗实体识别 四、知识表示方法知识表示模型RDFOWL属性图模型 本体构建关系提取与表示 五、知识图谱构建技术图数据库选择Neo4jArangoDB 构建流程数据预处理实体关系识别图…

go语言基础之泛型

1.泛型 泛型是一种独立于所使用的特定类型的编写代码的方法。使用泛型可以编写出适用于一组类型中的任何一种的函数和类型。 1.1 为什么需要泛型 func reverse(s []int) []int {l : len(s)r : make([]int, l)for i, e : range s {r[l-i-1] e}return r }fmt.Println(reverse…