使用Nodejs建markdown静态博客,文章总汇(8篇)
使用Nodejs建markdown静态博客,文章总汇(8篇)
这篇从我的javaeye博客上转过来的,有点像学习笔记。 <br/> <br/>在学习node.js的过程中,顺便做了个静态博客,边写博客边编码,一段时间下来写了8篇文章。 <br/><h2>文章列表:</h2> <br/><h3><a href=“http://witcheryne.iteye.com/blog/1161232”>从文件上传开始, 进入node.js的世界</a></h3> <br/><h3><a href=“http://witcheryne.iteye.com/blog/1160111”>将使用npm管理的node.js项目部署到vCloudLabs</a></h3> <br/><h3><a href=“http://witcheryne.iteye.com/blog/1165067”>用node.js建博客(一) - node.js安装及Express框架简介</a></h3> <br/><div> <br/><h3><a href=“http://witcheryne.iteye.com/blog/1165450”>用node.js建博客(二) - 构建第一个markdown页面<em> </em></a></h3> <br/><h3><a href=“http://witcheryne.iteye.com/blog/1169752”>用node.js建博客(三) - 用markdown写静态博客<em> </em></a></h3> <br/></div> <br/><div> <br/><h3><a href=“http://witcheryne.iteye.com/blog/1169854”>用node.js建博客(四) - express中的404处理</a></h3> <br/></div> <br/><h3><a href=“http://witcheryne.iteye.com/blog/1170096”>用node.js建博客(五) - 用vows以BDD方式测试程序<em> </em></a></h3> <br/><h3><a href=“http://witcheryne.iteye.com/blog/1172068”>使用node.js建博客(六) - 添加代码高亮的支持 (Final)</a></h3> <br/> <br/><h2>使用到的技术简介:</h2> <br/><a href=“http://nodejs.org/”>Node.js</a>:这个都不知道的话,估计你是不会来看这篇。 <br/> <br/><a href=“http://expressjs.com/”>Express</a>:node.js中的Web框架,采用Ruby 中的 sintra.rb 开发方式; <br/> <br/><a href=“http://jade-lang.com/”>jade</a>:一款node.js中的模板引擎 <br/> <br/><a href=“http://qingbo.net/picky/502-markdown-syntax.html”>markdown</a>: 用来写博客很不错,对html语法进行提炼,GitHub中的readme就需要用他写 <br/> <br/><a href=“http://visionmedia.github.com/expresso/”>Expresso</a>:Express作者写的测试框架,基于TDD的方式 <br/> <br/><a href=“http://vowsjs.org/”>Vows</a>:BDD测试框架(需要翻**, nnd~ ** 词不让我打!) <br/> <br/><a href=“http://blog.nodejitsu.com/rest-easy-test-any-api-in-nodejs”>API-Easy</a>:对Vows进行了封装,主要面向Rest-ful接口测试 <br/> <br/> <br/> <br/><span class=“Apple-style-span” style=“font-size: 20px;font-weight: bold”>参考资料总汇:</span> <br/> <br/><a href=“http://cnodejs.org/cman/path.html”>Node.js API中文手册</a> <br/> <br/><a href=“http://www.csser.com/tools/express-js/express-guide-reference-zh-CN.html”>Express中文入门手册</a> <br/> <br/><a href=“https://github.com/visionmedia/jade”>Jade模板引擎的GitHub</a> <br/> <br/><a href=“http://wiki.commonjs.org/wiki/Packages/1.0”>CommonJS Packages/1.0 Wiki</a> <br/> <br/><a href=“http://qingbo.net/picky/502-markdown-syntax.html”>Markdown语法中文说明</a> <br/> <br/><a href=“http://google-code-prettify.googlecode.com/svn/trunk/README.html”>Google-Code-Prettify使用文档</a> <br/> <br/><a href=“http://www.cnblogs.com/sanshi/archive/2011/03/16/1986468.html”>使用node.js, markdown-js,prettify.js打造个人写作平台</a> <br/> <br/><a href=“http://blog.nodejitsu.com/rest-easy-test-any-api-in-nodejs”>RestTeasy: Teat any API in node.js</a> <br/> <br/><a href=“http://cnodejs.org/blog/?p=1703”>[实践经验+代码]用node.js和express.js和jade搭建轻型cmd系统</a> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/> <br/>
# 使用Nodejs建markdown静态博客,文章总汇(8篇)
这篇从我的javaeye博客上转过来的,有点像学习笔记。
在学习node.js的过程中,顺便做了个静态博客,边写博客边编码,一段时间下来写了8篇文章。
## 文章列表:
### [从文件上传开始, 进入node.js的世界](http://witcheryne.iteye.com/blog/1161232)
### [将使用npm管理的node.js项目部署到vCloudLabs](http://witcheryne.iteye.com/blog/1160111)
### [用node.js建博客(一) - node.js安装及Express框架简介](http://witcheryne.iteye.com/blog/1165067)
### [用node.js建博客(二) - 构建第一个markdown页面](http://witcheryne.iteye.com/blog/1165450)
### [用node.js建博客(三) - 用markdown写静态博客](http://witcheryne.iteye.com/blog/1169752)
### [用node.js建博客(四) - express中的404处理](http://witcheryne.iteye.com/blog/1169854)
### [用node.js建博客(五) - 用vows以BDD方式测试程序](http://witcheryne.iteye.com/blog/1170096)
### [使用node.js建博客(六) - 添加代码高亮的支持 (Final)](http://witcheryne.iteye.com/blog/1172068)
## 使用到的技术简介:
- **Node.js**: 这个都不知道的话,估计你是不会来看这篇。
- **Express**: node.js中的Web框架,采用Ruby中的Sinatra开发方式。
- **Jade**: 一款node.js中的模板引擎。
- **Markdown**: 用来写博客很不错,对HTML语法进行提炼,GitHub中的readme就需要用它写。
- **Expresso**: Express作者写的测试框架,基于TDD的方式。
- **Vows**: BDD测试框架(需要翻墙)。
- **API-Easy**: 对Vows进行了封装,主要面向Restful接口测试。
## 参考资料总汇:
- [Node.js API中文手册](http://cnodejs.org/cman/path.html)
- [Express中文入门手册](http://www.csser.com/tools/express-js/express-guide-reference-zh-CN.html)
- [Jade模板引擎的GitHub](https://github.com/visionmedia/jade)
- [CommonJS Packages/1.0 Wiki](http://wiki.commonjs.org/wiki/Packages/1.0)
- [Markdown语法中文说明](http://qingbo.net/picky/502-markdown-syntax.html)
- [Google-Code-Prettify使用文档](http://google-code-prettify.googlecode.com/svn/trunk/README.html)
- [使用node.js, markdown-js,prettify.js打造个人写作平台](http://www.cnblogs.com/sanshi/archive/2011/03/16/1986468.html)
- [RestTeasy: Test any API in node.js](http://blog.nodejitsu.com/rest-easy-test-any-api-in-nodejs)
- [用node.js和express.js和jade搭建轻型cmd系统](http://cnodejs.org/blog/?p=1703)
示例代码
假设你已经安装了Node.js和npm,并且创建了一个新的项目目录。你可以通过以下步骤来设置你的静态博客:
-
初始化一个新的Node.js项目:
npm init -y
-
安装必要的依赖:
npm install express jade markdown-it prettify-js
-
创建一个基本的Express应用:
const express = require('express'); const path = require('path'); const markdownit = require('markdown-it')(); const prettify = require('prettify-js'); const app = express(); // 设置视图引擎为Jade app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'jade'); // 静态文件服务 app.use(express.static(path.join(__dirname, 'public'))); // 处理markdown文件 app.get('/post/:id', (req, res) => { const filePath = path.join(__dirname, 'posts', `${req.params.id}.md`); const content = fs.readFileSync(filePath, 'utf8'); const htmlContent = markdownit.render(content); res.send(` <!DOCTYPE html> <html> <head> <title>${req.params.id}</title> <link rel="stylesheet" href="/css/style.css"> </head> <body> ${prettify(htmlContent)} </body> </html> `); }); app.listen(3000, () => { console.log('App is running on port 3000'); });
-
创建一个简单的Jade模板:
doctype html html head title= title link(rel='stylesheet', href='/css/style.css') body != content
-
在
public/css/style.css
中添加一些样式。
这样,你就有了一个基本的静态博客系统,可以渲染Markdown文件并提供代码高亮功能。
为啥我提示:
app.register这个方法不存在啊?
》》》》用node.js建博客(三) - 用markdown写静态博客
为何要自己造轮子呢?
这篇帖子总结了使用Node.js构建一个Markdown静态博客的系列文章。以下是这些文章的列表:
- 从文件上传开始, 进入Node.js的世界
- 将使用npm管理的Node.js项目部署到vCloudLabs
- 用Node.js建博客(一) - Node.js安装及Express框架简介
- 用Node.js建博客(二) - 构建第一个markdown页面
- 用Node.js建博客(三) - 用markdown写静态博客
- 用Node.js建博客(四) - Express中的404处理
- 用Node.js建博客(五) - 用vows以BDD方式测试程序
- 使用Node.js建博客(六) - 添加代码高亮的支持 (Final)
使用的相关技术包括:
- Node.js: JavaScript运行时环境。
- Express: Node.js的Web应用框架。
- Jade: Node.js的模板引擎。
- Markdown: 用于编写博客的标记语言。
- Vows: BDD风格的测试框架。
这些文章详细介绍了从环境搭建、博客构建到功能完善的过程,适合想了解如何使用Node.js开发静态博客的开发者。