Drkcore

30 07 2011 javascript Tweet

Node.jsで簡単なブログを作ってみる

Blog rolling with mongoDB, express and Node.jsの写経だが、このエントリはわかりやすいですね。

node_blog

MongoDBって使いやすそうなので、SQLiteから乗り換えようかなと思ってちょっと調べたところMongoKitはSQLAlchemyっぽいような気がしたんだけどどうなんだろうかねぇ。結局javascriptだとクラス関係ないしJSON(BSON)だからMongoとの相性がいいんだろうか?あとでもう少し調べてみよう。

さて、上のエントリのブログのサンプルで使われていたHTMLとCSSのテンプレートエンジンが面白かったので調べてみた。

Jade

zen-codingみたいなノリでサクサク書いていけるっぽい。

Jade - robust, elegant, feature rich template engine for nodejs

Hamlっぽいとか書いてあったんだけどHaml知らんからなぁ(普段はFlask+Jinja2使ってます)。

EmacsのJade-modeはないみたい

stylus

CSSをシンプルに書ける独自のスタイル指定言語らしい。構造化してすっきりと記述できるみたい。

Expressive, robust, feature-rich CSS language built for nodejs

スクリーンキャストもありますね。

  • Stylus Intro
  • CSS Syntax & Postfix Conditionals

CSSなんてすぐにぐちゃぐちゃになって可読性が落ちるので、CSSなんてバイナリと一緒で人が読むもんじゃないんだぜみたいな立場にたてば、DRYを保てるようなこういった仕組みは良いんだろうなと思う、っていうか良い。

モジュールをインストールするとstylusっていうコマンドがついてきて、別にNode.jsじゃなくても使えるのでFlaskで使おうかなと思っている。

こんなstylがあるとして

body
  font-family "Helvetica Neue", "Lucida Grande", "Arial"
  font-size 13px
  text-align center
  text-stroke 1px rgba(255, 255, 255, 0.1)
  color #555
h1, h2
  margin 0
  font-size 22px
  color #343434
h1
  text-shadow 1px 2px 2px #ddd
  font-size 60px

コマンドラインからコンパイル

$ ../../node_modules/stylus/bin/stylus style.styl
  compiled style.css

できた。

body {
  font-family: "Helvetica Neue", "Lucida Grande", "Arial";
  font-size: 13px;
  text-align: center;
  text-stroke: 1px rgba(255,255,255,0.1);
  color: #555;
}
h1,
h2 {
  margin: 0;
  font-size: 22px;
  color: #343434;
}
h1 {
  text-shadow: 1px 2px 2px #ddd;
  font-size: 60px;
}

About

  • もう5年目(wishlistありマス♡)
  • 最近はPythonとDeepLearning
  • 日本酒自粛中
  • ドラムンベースからミニマルまで
  • ポケモンGOゆるめ

Tag

Python Deep Learning javascript chemoinformatics Emacs sake and more...

Ad

© kzfm 2003-2021