Skip to content

Instantly share code, notes, and snippets.

@gappy-jp
Last active May 9, 2018 04:28
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gappy-jp/b44d5e0265db0192019a to your computer and use it in GitHub Desktop.
Save gappy-jp/b44d5e0265db0192019a to your computer and use it in GitHub Desktop.
MEAN Stackの環境を作ろう(Mac編)

MEAN Stackの環境を作ろう(Mac編)

どうも、社内アドベント10日目になりました。
カレンダーもどんどん埋まってきていて、とてもいい感じですね

今回から3週連続でWebアプリ作成過程の成果を共有したいと思います
(かんせいするとはかぎらない(´・ω・`))

これまで断片的に勉強していたAngularJSでなにか作りたいとおもっていた矢先に、こんな記事を見つけました。

MEAN(MongoDB, Express, AngularJS, Node.js)スタックが優れている理由 - Mozilla Open Web Day in Tokyoを終えて - albatrosary's blog

というわけで、今回はWeb界隈で話題となりつつあるMEANスタックについて、勉強がてらプライベートPCに環境構築した手順をまとめてみました。

次回のADVENTがMEAN Stack関連になるかは土日の暇っぷり次第ですね。

MEANスタックとは

  • M…MongoDB(NoSQL)
  • E…Express(Node.js Webアプリケーションフレームワーク)
  • A…AngularJS(クライアントMVC系フレームワーク)(AngularJSではModel-View-Whatever)
  • N…Node.js(サーバーサイドJavascript)

一貫してJavascript(所謂フルスタック)!!! Web関連の方はLANPのJavascriptバージョンといえばわかりやすいでしょうか

mean.io公式には、以下の説明が書いてあります。

MEAN is an opinionated fullstack javascript framework - which simplifies and accelerates web application development.

…そういうことなのです

MEANを導入する環境

自宅のプライベート用PCへセッティングしてみます
環境はこんな感じです

  • OS:Mac OSX 10.10(Yosemite)
  • Homebrewは入ってましたがNodeは入っていなかった模様
    • 余談出すが、YosemiteにしてからRubyのバージョン関連で問題があるそうなので、Yosemiteに上げる前に適宜updateしたほうが良さそうです

前提条件

以下は事前にインストールしておいてください
Windows環境だったりUNIX環境の場合は、適宜読みなおしてください
(環境によってうまくいかないとはおもいますが…)

mean brew install mongo
* インストール後はMongoDBを立ち上げておかないと、gruntできないようです
  • Bower
npm install -g bower
  • Grunt(ビルドツール)
    • sudoしないとはいらなかった
sudo npm install -g grunt-cli

macじゃない人は、上のインストールができるように各自調べてください

mean環境を構築してみよう(こっからが本番!)

ここは公式通りにMEANを入手してみましょう

sudo npm install -g mean-cli  
mean init myApp

なんか出た!

Angularマークみたいなやつ

アプリケーションは作成できたみたいです
次に install dependenciesrun the app しろとのことなので、ターミナルに書いてあるように以下のコマンドを打ってみましょう

cd myApp && npm install
grunt

Gruntした後のコンソール

ここまできたら、ブラウザで localhost:3000 にアクセスしてみましょう

localhost:3000

** 爆速 **

4行打っただけで、myAppへMEAN環境を構築できました
myAppの中はこんなかんじです

ディレクトリの中身

あとはmyAppの中をゴニョゴニョするだけで、Webアプリケーション開発に専念できるわけですね

matome

  • たった4行でWeb開発に必要な環境が整ってしまうとは…
    • しかもすべてクライアントもサーバーもすべてjsなので、個人的にはとっつきやすい
  • ただし、Angularの学習コストの高さと、MongoDBの知らなさ加減が半端ではないので、引き続きのお勉強は必要ですね
    • まずはREDME.mdの読み込み
    • 「データを見せるだけなら外部API叩いて、Angularでゴニョゴニョで済んでしまうのでは?」という期待のもと、来週以降はそこらへんの記事あげられるようにがんばります
      • 要するにMongoDBゴリゴリなWebアプリ以外も作れそう
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment