Skip to content
/ pages Public

a static site generator, like hugo, hexo, but more lightweight.

Notifications You must be signed in to change notification settings

guxingke/pages

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pages

超轻量级的静态内容生成工具, 通过组合一些命令行工具构建而成。

核心逻辑在 makefilehelper 文件内,不超过 200 行。

功能

  • 博客
  • 静态 HTML 部署
  • Wiki 知识库
  • 自定义主题
  • 自定义所有流程

快速开始(macos 用户)

安装依赖

# jq 工具,处理 json
brew install jq

# yq 工具,处理 yaml
brew install python-yq

# sed ,使用 gnu-sed 而不是 macos 自带的。注意修改 PATH 
# PATH="/usr/local/opt/gnu-sed/libexec/gnubin:$PATH"
brew install gnu-sed

# pandoc , 用来实现 markdown 转 html , 核心工具
brew install pandoc

项目初始化

  • Clone 或者下载当前项目的源码
wget 'https://github.com/guxingke/pages/archive/master.zip'
unzip master.zip
mv master/pages-master pages
cd pages
  • 本地预览
make serve
  • 清除并重新构建
make clean && make

进阶功能

并行构建

项目基于 make 和 Makefile,并对并行构建进行了支持。

make -j 12 

解决全量构建时的速度问题

增量实时构建

watch 增量实时构建,并刷新当前 Chrome 的活动 Tab,基于 fswatch 在写入 3 秒后进行构建, 构建完成后通过 chrome-cli 刷新活动 tab (配合 make serve 使用)

make watch

切换主题

自带三主题,默认为 default。

make THEME=basic -j 12

使用主题 basic 进行构建。

集成 disqus 评论

只需反注释 basic.yml 文件中的 disqus 部分,配置 shortname 后重新构建即可。

部署新站点

  1. 修改 static/CNAME 文件内容,指向新的域名,或者移除该文件。
  2. 重新构建,或者移除 docs/CNAME 文件。
  3. 推送到新的仓库,并开启 Pages 服务。

更多功能

  • rss 支持
  • 搜索支持
  • 标签支持

实现原理

pandoc 转换工具

  • pandoc 支持模板
  • pandoc 支持读取 yaml 文件作为元信息
  • pandoc 支持 include 文件

make 构建

make 默认增量构建

变更日志

  • 基本可用

About

a static site generator, like hugo, hexo, but more lightweight.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published