Node.js

A collection of 14 posts

Node.js

細かすぎて伝わらない Sails.js v0.9.3 のtipsまとめ

Sails.jsは0.8系から0.9系にバージョンアップした際、仕様が大きく変わったので少しまとめてみました。 ちなみにSails.jsは もう v0.9.4のリリース終わって v0.9.7です。。。(2013/10/17現在) grunt 依存 sails lift(node app.js) 実行時、内部的にgrunt を実行しています。 これはv0.9系の一番大きい変更であり、一番やっかいな仕様変更です。 これにより、grunt[default]を実行し、そこからSails(Express)でサーバを起動するタイプの処理(grunt-express-serverなど)が動作しません。 また、これに付随するのか node-supervisor での起動も出来ません。再起動を延々繰り返します。

  • kamiyam
    kamiyam
Node.js

Sails.js v0.8.9 の 各オブジェクトへのアクセスをまとめてみた

Sails.js の最新版 (記事作成時v0.9.3) が結構変わっているようなので、今まで使っていた v0.8.9 のtips(というには大げさですが)をまとめておきます。 Sails.js v0.8.9 0.8.x Documentation 導入については過去記事を参照のこと Sails.js オブジェクト sails オブジェクト global["sails"] すべての sails 環境下で sailsオブジェクトが取得できる express オブジェクト sails.express sails がラップしている express オブジェクト sails.

  • kamiyam
    kamiyam
Node.js

Node.js勉強会 in 大阪 を開催しました

5/25 に (第二回)Node.js超初心者勉強会と、通常版の(第一回) Node.js勉強会を開催しました。 Node.js 超初心者勉強会 in 大阪 http://atnd.org/events/39286 Node.js 勉強会 in 大阪 http://atnd.org/events/39288 午前の超初心者向けのセッションもあったので、準備でいっぱいいっぱいでしたがなんとか無事開催することができてよかったです。 午前のセッション 本当に超初心者向けのセッションということで、インストールセッションを行ないました。 Node.jsを使う人が増えるといいなということと、使う人が増えてむしろ教えて貰いたい(?)ということで開催しています。 詳しい説明ではありませんが、Github にまとめていくことにしています。 Node.js超初心者勉強会

  • kamiyam
    kamiyam
Node.js

5/25(土) に第1回 Node.js 勉強会 in 大阪 を開催します。

概要 Node.jsの勉強会(第1回) を 5/25(土) に午前と午後の2部構成に分けて開催します。 名前が安直なんですが、 Node.js 超初心者勉強会 (午前) http://atnd.org/events/39286 午前は、Node.jsのインストールから始めたい デザイナー・コーダー・プログラマなど 超初心者向けの内容です。 そのため、Node.jsのインストールから始めます。 Node.js 勉強会 (午後) http://atnd.org/events/39288 午後は、Node.jsのことをもう少し深く知りたい方が対象となる内容です。 Node.jsに関わる方に色々お話して頂く内容です。 今回は、

  • kamiyam
    kamiyam
Node.js

Node.js の MVCフレームワーク Sails.js が良さげなので少し試してみた

Sails.js はNode.jsのフルスタックMVCフレームワークです。 Railsを意識しているフレームワークのようで、Node.js環境において非常に簡単にWebアプリを構成できそうです。 記事作成時の環境です。 Node.js v0.10.1 npm npm v1.2.15 インストール では早速導入 globalインストールでSails.jsをインストールします。 $ npm install -g sails@0.8.9 (2013.5.7 修正) npm install -g sails → npm install -g sails@0.8.9

  • kamiyam
    kamiyam
grunt

Yeomanでフロントエンドとバックエンドサーバを一緒に開発する

先月、HTML5など勉強会に参加した時、雑談タイムで 「 yeoman を使ってバックエンドの開発とかできないですか? 」 という内容に対して、フォローとして 「 gruntでリバースプロキシ使えますよ 」 っていうお話をした。 そのまま記事に書かずじまいで申し訳ないなーと思っていたら、@bathtimefish さんがブログをアップされていた。 その記事、 YeomanでフロントエンドとREST APIサーバーを同時に開発する方法 でリバースプロキシを使った手法が挙がっていたのですが、gruntのモジュールを使うともう少し楽ができそう。 私は、easymock を知らなかったですし、やはりyeoman 使ってる人が周りにあまりおらず、前回の勉強会は非常に勉強になったので、ここは一つ御礼の意味を込めてブログを書こうと思います。 ということで、yeoman(grunt) を使ったバックエンド開発のもう一つの手法を書いておきます。 さてここからが本題。 ベースとなる手順は元の記事を見ていただきつつ、途中まではだいたい同じです。 Yeomanは使える環境が整っているのが前提。 使えない場合はYeoman 導入編を参照してみてください。 まず REST APIサーバのモックが簡単に作れる easymock をインストール $ npm install -g easymock Node.

  • kamiyam
    kamiyam
Node.js

WindowsでNode.js(npm)触るならnodistを使うといいかもしれない

たまにWindowsでもNode.jsを使いたい時無いですか? 私はnode.js(と言うよりnpm)を使ってツールをインストールしたい場合があり、一応(?)Node.jsをインストールしています。 ただNode.jsはバージョンが上がるのが早いので(公式の便利なインストーラがあるとはいえ)都度更新しなければなりません。 ある時ふとしたきっかけでWindows用の便利なバージョン管理ツール「nodist」を見つけてからそれを使うようにしています。 nodist https://github.com/marcelklehr/nodist nodistはWindowsのみで使えるNode.js用のバージョン管理ツールです。 下記環境でテストしてみました。 Windows7 Professional 64bit nodist v0.3.5 まず、nodistコマンドを使えるようにします。 任意の場所に zip ファイルをダウンロードするか、git clone git://github.com/marcelklehr/nodist.

  • kamiyam
    kamiyam
grunt

grunt 管理下で Express(Node.js)を開発できるgrunt-init-express を公開しました

gruntで Expressを使った開発を行う環境を生成するgrunt-initテンプレートを公開しました。 grunt-init-express https://github.com/kamiyam/grunt-init-express 概要 grunt を使うとSass、LESSのコンパイルやWebSocketを使ったLiveReload、ファイルの圧縮など様々なことがことができますが、grunt-init コマンドを使うことでscaffoldingな構成を簡単に生成することができます。 すでに提供されているテンプレートを使用することもできますが、今回のようにベースとなるテンプレートを自分で作成することもできます。 公開されている grunt-init の 他のテンプレートについては過去記事を参照してください。 grunt-init-express はこんな機能があります。 gruntからNode.jsを実行 Node.jsをgruntのプロセスで管理するため gruntコマンドを使用します。Node.jsはsupervisorコマンドを使用しています。 SassとCoffeeScriptのコンパイル SassからCSSへ、CoffeeScriptからJavaScriptへ自動でコンパイルします。 HTML、CSS、JavaScript、View(ejs/jade)ファイルのファイル変更監視 public(private)フォルダのHTML、CSS、

  • kamiyam
    kamiyam
grunt

matchdepを使ってGrunt.jsのプラグインを自動ロードする

Gruntが0.4系になってGruntのプラグインが細分化されました。 名称が grunt-xxx となるものが非常に多くなりましたね。 また、細分化された分 Gruntfile.js でロードするプラグインの数が多くなっています。 packege.json にこのような記述があったとしましょう。 { "name": "grunt-plugin-auto-load", "version": "0.1.0", "Dependencies": {}, "devDependencies": { "grunt": "~0.4.0", "grunt-contrib-connect"

  • kamiyam
    kamiyam
Node.js

Node.js 超初心者勉強会を開催しました

3/8 Node.js を使って開発をしたことが無い、あるいは触ってみたいという方を対象に勉強会を開催しました。 Node.js 超初心者勉強会 in 大阪 http://atnd.org/events/37147 私は大阪Node学園(モード学園ではない)という Node.js の勉強会の運営スタッフをしているのですが、今回はそのNode学園とは別枠で開催する事となりました。 Node.jsは「インストール」するまでの敷居が高くてなかなか使うに至らない場合が多く、普段は別の言語を使っているプログラマ / サーバーサイドの処理を知る一歩としてNode.jsを触ってみたいデザイナー を対象にしようというのが今回の勉強会の趣旨でした。 また、ワークショップの性質上あまり多くの方を見ることはできないので 「npm install」 などのコマンドを知っている方はなるべく参加しないで欲しい(サポート役として参加なら可)としてみました。 当日のツイートは Togetter にもまとめて頂いています。 平日、しかも金曜日の19時〜というスケジュールにもかかわらずキャンセル待ちが出る状態で、

  • kamiyam
    kamiyam
grunt

Yeomanを使ってSass/LESSをもっと簡単スピーディに 〜導入編〜

概要 解説編でも書きましたが、Yeomanはビルドツールです。 ファイルの変更を監視してブラウザのリロードをかけたり、Sass LESSのコンパイルを行い、最終的に実行ファイル(プレーンなHTMLやCSSファイル)を出力したりする機能があります。 今回は Yeoman1.0 (beta) のインストールについて書きます。 (※ 2013/02/21時点で安定版 はv0.9.6、v1.0.0は beta の開発版です) Yeoman インストール Yeoman を利用するために、以下3つをインストールします。 $ npm install -g yo grunt-cli bower yo Yeoman本体です。 v0.9まで yeomanコマンド ですべて実行していたのですが、yoコマンドに変更されました。 grunt-cli

  • kamiyam
    kamiyam
grunt

grunt-cli (grunt.js v0.4.x)で LiveReload を試してみた

GRUNTのバージョンがv0.4.0になり、記述・利用方法が一新されました。 Grunt 0.4.0 released 主な変更点と言えば、 grunt-cli をグローバルインストール gruntを各プロジェクトごとにローカルインストール プラグイン(contrib-xxxなど)は細かく細分化された (プラグインはpackage.json に記述し npm install でインストール) Yeomanも1.0から grunt-cli をインストールする形になっています。 手順 今回はLiveReloadを試してみたいと思います。 grunt-contrib-livereload Sass,lessの自動コンパイルなどは無しで。 ファイル一式(gist)https://gist.github.com/kamiyam/4996713 □□□□□□□□□□□ grunt をインストールして作業用のフォルダを作成する もし、0.

  • kamiyam
    kamiyam
eclipse

「第二回 JetBrainsユーザーグループ in 大阪」 で WebStormについて発表してきました

1/30 「第二回 JetBrainsユーザーグループ in 大阪」 で WebStormについて発表してきました WebStormでできること from kamiyam . WebStorm (とそれを含むIntelliJ IDEA)は HTML,CSS,JavaScriptのコード書くのに非常にいいよね。という内容です。 特にJavaScriptに対してが非常によく、私はNode.jsでサービス作るときにWebStormを使っています。 5分LTということであまり多くは伝えられなかったのですが、まぁ細かい所はまた別の機会に。 ともあれ、@yusuke さん、@aa7thさん、参加者の皆さんありがとうございました。 全体の流れは #jbugj で追ってみてください。 以下、フォローアップということで css/Sass/LESSの色設定 #xxxxxx と言ったRGBカラーが左端にそのまま表示されるので非常に便利で、なおかつSass・LESSで変数設定した色もちゃんと追従してくれるので非常にありがたい。 $color変数の色を変更 他の$color変数の色も変わる

  • kamiyam
    kamiyam
Node.js

Twitterで見知らぬ人からリプライが飛んできてNode.js勉強会で発表した話

ある日、TwitterでURLだけ書かれたリプライが飛んできました。 リプライを送ってきたのは @vanx2 さん。 全く面識が無く「???」と思いつつ開くと Node.js勉強会@関西 第0回 http://atnd.org/events/21762 ふむ、Node.jsの勉強会だったんですね。 もちろん興味があったので参加をすることにしましたが、発表するのはちょっとハードルが高いかな・・・と思っていました。 そんな中、TwitterのタイムラインでこんなTweetが 勉強会の発表とかは発表してから後悔すればいいんです (Via) @repeatedly うん、そうですよね。せっかくなので発表しよう! そんなこんなで、発表を決めました。 ( 今だから書きますが、実は発表が決まってからNode.jsをインストールしなおしました(笑) 私は、発表用のスライドをWebSocketで同期させる仕組みを作っていて、それを開発用サーバのJetty( Javaで書かれたWebアプリケーションサーバ )にアップしていました。 そのあたりのURL(というかポート番号)をもう少しすっきりさせようと、

  • kamiyam
    kamiyam