{"id":16757034,"url":"https://github.com/guxingke/pages","last_synced_at":"2025-04-10T16:53:08.713Z","repository":{"id":101545668,"uuid":"197202190","full_name":"guxingke/pages","owner":"guxingke","description":"a static site generator, like hugo, hexo, but more lightweight.","archived":false,"fork":false,"pushed_at":"2020-12-14T02:30:02.000Z","size":44,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-03-24T14:45:32.073Z","etag":null,"topics":["cli","makefile","pandoc","static-site-generator"],"latest_commit_sha":null,"homepage":"http://pages.guxingke.com","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/guxingke.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-07-16T13:44:17.000Z","updated_at":"2021-12-20T02:27:52.000Z","dependencies_parsed_at":"2023-06-05T10:00:17.789Z","dependency_job_id":null,"html_url":"https://github.com/guxingke/pages","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guxingke%2Fpages","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guxingke%2Fpages/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guxingke%2Fpages/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guxingke%2Fpages/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/guxingke","download_url":"https://codeload.github.com/guxingke/pages/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248256665,"owners_count":21073568,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","makefile","pandoc","static-site-generator"],"created_at":"2024-10-13T03:42:44.312Z","updated_at":"2025-04-10T16:53:08.705Z","avatar_url":"https://github.com/guxingke.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pages\n\n超轻量级的静态内容生成工具, 通过组合一些命令行工具构建而成。\n\n- 项目站点 [Pages](https://pages.guxingke.com) 。\n- 实例站点 [Guxingke](https://www.guxingke.com) 。\n\n核心逻辑在 [makefile](makefile) 和 [helper](helper) 文件内，不超过 200 行。\n\n# 功能\n\n- 博客\n- 静态 HTML 部署\n- Wiki 知识库\n- 自定义主题\n- 自定义所有流程\n\n# 快速开始(macos 用户)\n\n## 安装依赖\n\n```bash\n# jq 工具，处理 json\nbrew install jq\n\n# yq 工具，处理 yaml\nbrew install python-yq\n\n# sed ，使用 gnu-sed 而不是 macos 自带的。注意修改 PATH \n# PATH=\"/usr/local/opt/gnu-sed/libexec/gnubin:$PATH\"\nbrew install gnu-sed\n\n# pandoc , 用来实现 markdown 转 html , 核心工具\nbrew install pandoc\n```\n\n## 项目初始化\n\n- Clone 或者下载当前项目的源码\n\n```bash\nwget 'https://github.com/guxingke/pages/archive/master.zip'\nunzip master.zip\nmv master/pages-master pages\ncd pages\n```\n\n- 本地预览\n\n```bash\nmake serve\n```\n\n- 清除并重新构建\n\n```bash\nmake clean \u0026\u0026 make\n```\n\n# 进阶功能\n\n## 并行构建\n\n项目基于 make 和 Makefile，并对并行构建进行了支持。\n\n```bash\nmake -j 12 \n```\n\n解决全量构建时的速度问题\n\n## 增量实时构建\n\nwatch 增量实时构建，并刷新当前 Chrome 的活动 Tab，基于 fswatch 在写入 3 秒后进行构建, 构建完成后通过 `chrome-cli` 刷新活动 tab （配合 make serve 使用）\n\n```bash\nmake watch\n```\n\n## 切换主题\n\n自带三主题，默认为 default。\n\n```bash\nmake THEME=basic -j 12\n```\n\n使用主题 basic 进行构建。\n\n## 集成 disqus 评论\n\n只需反注释 [basic.yml](basic.yml) 文件中的 disqus 部分，配置 shortname 后重新构建即可。\n\n## 部署新站点\n\n1. 修改 `static/CNAME` 文件内容，指向新的域名，或者移除该文件。\n2. 重新构建，或者移除 `docs/CNAME` 文件。\n3. 推送到新的仓库，并开启 `Pages` 服务。\n\n# 更多功能\n\n- [ ] rss 支持\n- [ ] 搜索支持\n- [ ] 标签支持\n\n\n# 实现原理\n\n## pandoc 转换工具\n\n- pandoc 支持模板\n- pandoc 支持读取 yaml 文件作为元信息\n- pandoc 支持 include 文件\n\n## make 构建\n\nmake 默认增量构建\n\n# 变更日志\n\n- 基本可用\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguxingke%2Fpages","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fguxingke%2Fpages","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguxingke%2Fpages/lists"}