Coder Social home page Coder Social logo

zxuqian / zxuqian.cn Goto Github PK

View Code? Open in Web Editor NEW
268.0 8.0 66.0 51.08 MB

峰华前端工程师@Bilibili 的个人博客,记录开发、日常、心得、思考、随笔等内容。

Home Page: https://zxuqian.cn

JavaScript 74.59% CSS 16.82% EJS 8.59%
frontend react vue blog personal-blog

zxuqian.cn's Introduction

个人博客

本博客基于 Docusaurus 2 JAMStack 静态网站生成器实现,作为 Bilibili(峰华前端工程师) 视频的文本版载体呈现。不定时更新前端开发相关博客,后续考虑增加全栈开发内容。

本博客的代码如无特殊说明,可以自由使用,版权信息详见关于版权部分。接下来简单介绍一下本博客的开发和部署方式,关于 Docusaurus 的使用方法请参考官方网站 Docusaurus 2

使用方法

首先克隆仓库代码:

$ git clone https://github.com/zxuqian/zxuqian.cn.git

安装依赖:

$ cd zxuqian.cn
$ yarn install
# 或使用 npm install,下同

启动项目:

$ yarn start

构建项目:

# 同时构建中文和英文版
$ yarn build

# 只构建中文版
$ yarn build-cn

关于部署,由于不同的服务器、平台有不同的方式,可以使用 Github Pages、FTP、自行搭建服务器等。

目录介绍

下面是主要目录的介绍:

├── _templates                     # hygen 模板
│   ├── blog                       # 博客模板
│   ├── doc                        # 文档模板
│   ├── generator                  # hygen 生成器模板
│   └── video-doc                  # 视频文档模板
├── babel.config.js
├── blog                          
│   ├── 2020-02-21-first-blog.md   # 博客文件
│   └── img                        # 博客图片
├── docs                          
│   └── doc1.md                    # 文档          
├── docusaurus.config.js
├── drafts                         # 草稿目录(自定义)
├── i18n
│   └── en                         # 英文本地化
├── package.json
├── scripts                        # 自动化脚本
│   ├── create.mjs                 # 自动创建视频文档模板
│   └── getVideoList.mjs           # 获取本人所有视频列表(测试用途)
├── sidebars.js                    
├── src
│   ├── components                 # 自定义组件
│   ├── css                        # 自定义 CSS
│   ├── pages                      # 自定义页面
│   ├── plugin                     # 自定义插件
│   └── theme                      # 自定义主题
├── static
│   ├── icons                      # 公用图标
│   ├── img                        # 公用图片(以及遗留的博客图片)
│   └── katex                      # Latext 公式插件所需资源
└── yarn.lock

自动生成博客和文档

由于 docusaurus 对于博客、文档的格式要求比较多,所以使用自动化工具可以协助我们快速创建相关文档和配置。项目使用了 hygen 来根据定义的模板创建博客或文档 md 文件,你需要在本地全局下安装 hygen 才能使用。模板所在目录为 _templates

安装 hygen:

$ npm i -g hygen

MacOS 下还可以使用 Homebrew 安装:

$ brew tap jondot/tap
$ brew install hygen

创建一篇新的博客文章:

hygen blog new [博客名称]
#例如
hygen blog new react-get-started

无需填写日期,hygen 模板中会自动获取当前的日期,在创建完博客之后,同时会在 blogs/img 文件夹下创建与博客同名的文件夹,用于存放用到的图片。

博客模板内容可通过 _templates/blog/new/index.ejs.t 文件进行修改。

创建一篇新的文档:

hygen doc new [文档名称]
#例如
hygen doc new react-get-started

创建好的文档会直接放到 docs/react-examples 目录下,这个目录可以通过 hygen 模板中的参数进行修改,可以通过命令行指定,或者在模板中编写固定路径,由于文档的配置项比较少,所以我自己一般通过复制粘贴之前的文档形式来创建新的文档,并手动追加到 sidebars.js 文件中。

关于和 Bilibili 视频相关的文字版脚本,可以使用 yarn gen 命令创建,具体使用方法如下:

(待完善)

自定义组件(待完善)

BlogListPage

BlogPostItem

BVideo

Comments

赞助

本博客的设计、代码均免费提供,如果觉得对你有帮助,可以小赞一笔,以支持我发布更好的视频、文章和代码,感谢!

微信 支付宝

关于版权

所有插件、主题代码均为开源,可自由使用分发。其他内容包括但不限于文章、图片、视频等版权均为作者所有,但遵循 CC BY-NC 4.0 协议,转载时请注明来源和署名,并且不可用于商业目的。

博客首页头图 ./src/theme/BlogListPage/img/hero_main.svg 为版权图片,不可在产品环境中使用,亦不可进行传播、复制或修改,或用于任何目的。

zxuqian.cn's People

Contributors

zxuqian avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.