Code for Chiba のお祭りデータセンターのソースコードです。
主に以下のライブラリを使用して作られています。
- jquery
- bootstrap
- leaflet
- riotjs
本プロジェクトでは開発ツールとしてDockerとGruntを使用しています。 DockerではGruntを動かす為のnodeやnpmの環境を提供しています。 Gruntが担うタスクは以下の機能になります。
- scssのコンパイル
- tagファイルのコンパイル
- 開発用httpサーバの起動
- リリース用モジュール(ソース圧縮、結合等)の生成
(以下、Docker環境)
- Dockerをインストール
ソースをチェックアウトし、プロジェクトのディレクトリに移動します。
$ git clone https://github.com/codeforchiba/feschibal.git
$ cd feschibal
- DockerHubから取得する場合
$ docker pull codeforchiba/feschibal
$ docker tag codeforchiba/feschibal festival-server-dev
- 自分でビルドする場合
$ docker build -t festival-server-dev -f Dockerfile.dev .
- 取得したDockerImageをDockerコンテナとして起動
$ docker run -d -p 9000:9000 -p 35729:35729 -v $(pwd)/app:/var/www/feschibal/app festival-server-dev
以下の URL で動作確認できます。
http://localhost:9000/
プロジェクトのディレクトリ配下でファイルを編集します。
ファイルを更新すると、開発環境を起動している間はscssファイルもtagファイルも変更を自動で検知し 自動でコンパイルしてくれます。 また、livereload-jsがブラウザを自動でリロードしてくれます。
ローカル環境にnode.jsをインストールして開発環境を作ります。
- nodeのインストール
(nodeが既にインストールされている場合はスキップ可)
※注 macの場合nodeが/usr/local下にインストールされると権限の問題でnpmコマンドが失敗します。 インストール先を変更するか、権限を与えるようにしてください。
- npmとgruntをアップデートする
$ npm install -g npm
$ npm install -g grunt-cli
プロジェクトのディレクトリ直下で実行してください。
$ npm install
- 開発用サーバーを起動する場合
$ grunt serve
- expressサーバーを起動する場合
$ grunt serve:express
以下の URL で動作確認できます。
http://localhost:9000/
アプリケーションソースの配置場所
Gruntによって自動生成されたファイル(css, js)が配置される場所。 scssから生成されたcssファイル。tagファイルから生成されたjsファイルが配置されています。 ソースのコミット対象外としています。
"grunt build" で生成された本番用モジュールが配置されます。 ソースのコミット対象外としています。
開発ツールであるGruntに関連するファイルが配置されています。 "npm install" をすることで必要なモジュールがこのディレクトリの下に配置されます。 ソースのコミット対象外としています。
MIT