Coder Social home page Coder Social logo

jiyulongxu / cellar Goto Github PK

View Code? Open in Web Editor NEW

This project forked from xiaoqiang-zhao/cellar

0.0 1.0 0.0 18.76 MB

这是一个静态博客生成工具,用 markdown 写博客,一行命令生成可访问页面,同时支持手机和 pc,可部署到 github。

Home Page: https://longze.github.io/#!/

License: Other

JavaScript 91.25% HTML 4.34% Smarty 0.78% CSS 3.63%

cellar's Introduction

cellar 2.3.0

cellar中文意思酒窖,希望这里的每一篇博文都是一瓶美酒佳酿,这是建立这个项目的美好愿景。

项目概述

秉承 cellar 1.0 的内容,cellar 2.x 在工程方面方面进一步升级。如果 1.0 是酒窖,那么 2.x 就是“酒窖的成产工具”,是的你没看错是“生产酒窖”,为那和我一样有酿造和收藏兴趣美酒的人。用专业的术语讲这是一个静态博客内容生成工具,在本项目中使用 markdown 编写,然后一行命名发布。就是这么简单,让你专注于内容。另外生成的静态站做了响应式设计,可以兼容 pc 和 移动端。

快速上手

首先安装 node,像安装 QQ 一样简单,到NodeJs中文网下载安装包;

其次安装本项目依赖的 node 模块,在本项目根路径下运行下面命令:

npm install

启动网站(依然在本项目根路径下运行),到此为止你的个人博客已经运行起来了。

node server

开始表现自己吧

初始化网站

头像的图片位置: cellar/web/src/components/header/picture.png,请同名替换成你自己的。网站的其他全局信息(包括 title、主标题、副标题)可以在 cellar/tool/init-site/bin/config.js 中配置。运行下面完成网站初始化。

node tool/init-site

写文章

web/articles 下新建文件夹,在此文件夹下新建 main.md 文件,参考示例编写你的内容。写完之后,运行下面命令(依然在本项目根路径下运行),此命令会将文章生成到首页,同时将整个博客的对外发布部分复制粘贴到与 cellar 同级的 my-blog 文件夹下,如果想要复制粘贴到本地的其他地方,可在 cellar/tool/init-site/lib/config.js 中配置。

node tool/publish

只需要写 md 文件就可以,data.jsonmain.html 可由上面命令生成。在 data.json 中可以通过 isPublished 配置文章是否发布出去,通过 tags 可以配置文章标签;main.html 是为搜索引擎生成的静态页面。

发布网上

此工具生成的是一套静态网站,如果有自己的服务器只需要将 my-blog 下的内容放到网站根目录下就可以。

如果没有自己的服务器,可以在 github 上开通个人站点,作为一个开源项目上传,如何开通和上传请参考 github 官方文档。最后的成果请参考本开源项目发起人小强赵的个人站点

cellar 2.1 的改进点

  • 调整配置参数,将 init-site 拆成 init-site 和 publish 两部分
  • 添加 “执行 init-site 时附加执行 publish” 功能
  • 简化 SEO 部分的生成逻辑
  • 优化前端代码,添加 vue 别名等
  • 添加“文章列表按文章发布时间倒序的功能”
  • 完善 tag 功能,无 tag 时不显示 tag 区域
  • 添加单页应用中对图片路径的相对化处理
  • 完善 Licence 信息,明确指定为 MIT 许可

cellar 2.2.0 的改进点

  • 修正 cellar 技术文档在 README.md 中的路径引用错误
  • 将 webpack 的配置提取到单独文件
  • 添加对未发布文章的列表查看功能
  • 删除 index-owner和其相关代码逻辑
  • 添加markdown 解析链接时的title 属性
  • 添加发布复制 favicon.ico 功能
  • 添加对博客文件夹清除非最新版 dist 的功能
  • 完善 route-view 和 v-link 的使用
  • 更新 cellar 技术文档
  • 将压缩资源的版本号与项目的版本号进行统一
  • 从此版开始“语义化版本管理” 相关描述参见此译文

cellar 2.3.0 的改进点

  • 添加 手动更改版本信息后自动部署 的支持
  • 升级页面布局,改为弹性布局,代码更简单清晰
  • 优化文章详情页体验,添加文章目录始终保持在可是范围内以及跟随动画等

作者寄语

这是一个幼小的开源项目,还有很多需要完善的地方,如果你感兴趣,我们可以一起来做这件有意思的事情,下面是我想做还没来得及做的一些改进点,欢迎贡献代码。如果你建议添加一些其他功能,请在 Issues 中提出方便管理。如果你想吐槽我的代码也是乐于受教的,同样在 Issues 中提出。

  • css 预处理

这个系统是我对前端模块化和工程化的一个探索,抛开这个工具业务本身,在技术和工程层面也很值得探索,技术细节请参考 "cellar 技术文档"

cellar's People

Contributors

seven3s avatar xiaoqiang-zhao avatar

Watchers

 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.