Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/num5/chca
使用golang写的静态博客生成器
https://github.com/num5/chca
blog golang static-site static-site-generator
Last synced: 3 months ago
JSON representation
使用golang写的静态博客生成器
- Host: GitHub
- URL: https://github.com/num5/chca
- Owner: ghaoo
- License: apache-2.0
- Created: 2015-10-29T09:40:27.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2020-01-13T08:11:32.000Z (almost 5 years ago)
- Last Synced: 2024-04-14T01:50:25.780Z (7 months ago)
- Topics: blog, golang, static-site, static-site-generator
- Language: Go
- Homepage: http://chca.me
- Size: 282 KB
- Stars: 35
- Watchers: 7
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# CHCA
chca是一个使用golang开发的静态博客生成器,简单、方便、快捷,抛弃每次都需要使用命令编译文件,采用文件监听方式编译,博客作者只需把markdown文件放到配置中的markdown文件夹下就能自动生成html了。
## 安装
```bash
go get -v github.com/ghaoo/chca/chca
```## 使用
```bash
# chca command [args...]# 初始化博客文件夹
chca init# 新建 markdown 文件
chca new filename# 编译博客
chca compile/c
# 打开文件监听器
chca watch/w# 打开文件服务器, 默认端口9900
chca http [port]
# 运行chca, 默认端口9900
chca run [port]
```### chca init
> chca init 用于初始化博客,会自动生成config.yml```yml
# config.yml# 站点信息
title: 我的网站
subtitle: 网站标题
description: mate-description
keywords: mate-keywords
summary_line: 10 // 首页文章行数
home_art_num: 30 // 首页文章数量# 文件夹相关
theme: theme/blog //网站模板
markdown: markdown //博客markdown文件存放文件夹
html: /data/www/html //博客html文件存放文件夹
storage: storage //数据存放文件夹,暂时未用到# 作者信息
author: your name
avatar: /assets/avatar.png //头像连接,一般放到assets或者avatar文件夹里
github: https://github.com/ghaoo //github主页
weibo: http://weibo.com/golune //微博主页
mail: [email protected] //email 地址
zhihu: https://www.zhihu.com/people/golune //知乎主页
# 监听信息
paths: // 监听文件夹
- markdown
exts: // 监听后缀名
- md# 上传信息
upload_theme: theme/upload // 上传模版地址# 自定义标题,可不配置,使用chca设置好的标题
home_title: 主页标题
archive_title: 文章归档标题
tag_title: 标签导航页面标题
cate_title: 分类导航页面标题
about_title: 简历页面标题
article_title: 文章标题标头```
初始化以后需要在config.yml文件同目录下创建theme文件夹用于存放模板文件模板文件夹结构
- blog 模版文件夹
- -- assets 资源文件夹
- -- -- css
- -- -- js
- -- layout 布局文件夹
- -- -- main.html 公共布局
- -- -- index.html 主页
- -- -- post.html 文章页
- -- -- archive.html 归档导航页
- -- -- category.html 分类导航页
- -- -- tag.html 标签导航页
- -- -- page.html 标签和分类列表页面> 模板语法参照:[template](template.md)
### chca new filename
> 新建markdown文件
markdown文件需要以 `---` 开头进行说明:
```bash
---
date: 2017-01-01
title: 我的博客
categories:
- 技术
tags:
- golang
---
```
建议使用chca创建markdown文件`about.md`文件是存放作者简历的文件,存放在markdown文件夹
另外`readme.md`和`about.md`不会被文章解析器解析### chca compile
> 生成html文件
### chca watch/w
> 开启文件监听器,监听文件夹和文件后缀名在config.yml里配置,配置示例:
```yml
// 监听文件夹
paths:
- markdown
// 监听后缀名
exts:
- md // 监听 markdown 文件(以.md为后缀的文件)
```
以上配置:监听器监听`markdown`文件夹下的以`.md`为后缀的文件,当文件夹下的`.md`文件新增或者发生改变时,chca则会自动编译博客### chca http 8800
> 打开内部服务器,监听端口8800
### chca run 8800
> 打开内部服务器,监听端口8800,并开启文件监听器
# License
etcd is under the Apache 2.0 license. See the LICENSE file for details.