跨端博客解决方案 Elog 使用
Elog (https://github.com/LetTTGACO/elog) —— 开放式跨平台博客解决方案,随意组合写作平台 (语雀/Notion/FlowUs) 和部署平台 (Hexo/Vitepress 等 。
主要配置文件 elog.config.js:
module.exports = {
write: {
platform: "yuque",
yuque: {
token: process.env.YUQUE_TOKEN,
baseUrl: "",
login: process.env.YUQUE_LOGIN,
repo: process.env.YUQUE_REPO,
onlyPublic: false,
onlyPublished: true,
},
notion: {
token: process.env.NOTION_TOKEN,
databaseId: process.env.NOTION_DATABASE_ID,
filter: true, // {property: 'status', select: {equals: '已发布'}}
sorts: true, // [{timestamp: 'created_time', direction: 'descending'}],
catalog: false,
},
flowus: {
tablePageId: process.env.FLOWUS_TABLE_PAGE_ID,
filter: true, // {property: 'status',value: '已发布'}
sort: true, // { property: 'createdAt', direction: 'descending' }
catalog: false,
},
},
deploy: {
platform: "local",
local: {
outputDir: "./Cookbook",
filename: "title", //生成文档的命名格式,取值 urlname|title
format: "markdown",
catalog: true, //是否按照目录生成文档
formatExt: "",
},
confluence: {
user: process.env.CONFLUENCE_USER,
password: process.env.CONFLUENCE_PASSWORD,
baseUrl: process.env.CONFLUENCE_BASE_URL,
spaceKey: process.env.CONFLUENCE_SPACE_KEY,
rootPageId: process.env.CONFLUENCE_ROOT_PAGE_ID, // 可选
formatExt: "", // 可选
},
},
image: {
enable: true,
platform: "local",
local: {
outputDir: "./Images", //本地图片保存目录
prefixKey: "/cookbook", //替换图片的url前缀,如 ![image.png](/cookbook/xxxx.png)
},
oss: {
secretId: process.env.OSS_SECRET_ID,
secretKey: process.env.OSS_SECRET_KEY,
bucket: process.env.OSS_BUCKET,
region: process.env.OSS_REGION,
host: process.env.OSS_HOST,
prefixKey: "",
secretExt: "", // 可选
},
cos: {
secretId: process.env.COS_SECRET_ID,
secretKey: process.env.COS_SECRET_KEY,
bucket: process.env.COS_BUCKET,
region: process.env.COS_REGION,
host: process.env.COS_HOST,
prefixKey: "",
secretExt: "", // 可选
},
qiniu: {
secretId: process.env.QINIU_SECRET_ID,
secretKey: process.env.QINIU_SECRET_KEY,
bucket: process.env.QINIU_BUCKET,
region: process.env.QINIU_REGION,
host: process.env.QINIU_HOST,
prefixKey: "",
secretExt: "", // 可选
},
upyun: {
user: process.env.UPYUN_USER,
password: process.env.UPYUN_PASSWORD,
bucket: process.env.UPYUN_BUCKET,
host: process.env.UPYUN_HOST,
prefixKey: "",
secretExt: "", // 可选
},
github: {
user: process.env.GITHUB_USER,
token: process.env.GITHUB_TOKEN,
repo: process.env.GITHUB_REPO,
branch: "",
host: "",
prefixKey: "",
secretExt: "", // 可选
},
},
};
基于语雀 WebHook 实现实时同步:https://github.com/LetTTGACO/serverless-api