https://github.com/knjcode/hmms
電車やバスが到着するまでの時刻を一覧でカウントダウンするWebアプリ
https://github.com/knjcode/hmms
Last synced: about 2 months ago
JSON representation
電車やバスが到着するまでの時刻を一覧でカウントダウンするWebアプリ
- Host: GitHub
- URL: https://github.com/knjcode/hmms
- Owner: knjcode
- License: mit
- Created: 2014-02-22T11:27:52.000Z (about 12 years ago)
- Default Branch: master
- Last Pushed: 2015-03-03T11:17:29.000Z (about 11 years ago)
- Last Synced: 2024-04-17T00:32:06.929Z (almost 2 years ago)
- Language: JavaScript
- Homepage:
- Size: 309 KB
- Stars: 3
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
hmms
====
電車やバスが到着するまでの時刻を一覧でカウントダウンするWebアプリ
デフォルトは現在時刻を基準にカウントダウン(画面下部のスライダで時刻を微調整可)
# 作成の経緯
自宅と最寄駅間のバスが2ルート(バス停までの距離と乗車時間がほぼ同じ)あり、どちらのバスが早く来るか、各々の時刻表を確認するという作業を繰り返していましたが、次第に面倒くさくなり、複数の時刻表を一覧でカウントダウンできるアプリを作りました。
自宅がモロバレするため、リポジトリに含まれる時刻表はサンプルに差し替えてあります。
# 使い方
- リポジトリをクローン
- 時刻表ファイルを適宜修正
- 各種ファイルをwebサーバに配置
- index.htmlにアクセス
iPhoneで利用する場合にはSafariの共有メニューから「ホーム画面に追加」を選択することで単体アプリのように起動できます。
## 時刻表のフォーマット
ファイル形式はcsvで、1行目で路線種別、出発駅、行き先を設定し、2行目以降には[平日]、[土曜]、[日曜・祝日]、ごとに出発時刻を記入します。
出発時刻の行は4カラムで構成され、hh:mm形式の時刻,種別(各駅、快速等),行き先,備考 の順で記入します(時刻以外は省略可能)。
デフォルトでは6つの時刻表が表示されます。(1ban.csv ~ 6.ban.csv)
時刻表サンプル(説明用のため実際の時刻表とは異なります)
```csv
JR中央線快速,新宿駅,東京方面
[平日]
06:04,快速,東京行,始発
06:11,快速,東京行,
06:17,快速,東京行,
...
23:31,快速,東京行,
23:40,快速,東京行,
23:47,快速,東京行,
[土曜]
06:38,中央特快,東京行,始発
06:52,快速,東京行,
07:00,中央特快,東京行,
...
22:21,快速,東京行,
22:30,快速,東京行,
22:38,快速,東京行,
[日曜・祝日]
06:38,中央特快,東京行,
06:52,快速,東京行,
07:00,中央特快,東京行,
...
```
# アプリの修正
## 使用しているツール
Webアプリ作成にあたり、gulp, jade, sass, CoffeeScriptを利用しています。
アプリを改造する場合にはそれぞれ以下のファイルを修正します。
HTML: jade/index.jade
CSS : sass/hmms.scss
JavaScript: coffee/hmms.coffee
## 修正したファイルをコンパイルする
各種ファイルのコンパイルには、node.js, npm, gulpが必要です。
```shell
$ npm install -g gulp // gulpをグローバルにインストールしていなければ導入する
$ npm install // 使用するパッケージを一括でインストール
$ gulp // 修正したファイルをコンパイル
```
gulpのオプションは以下のとおりです。
coffee: CoffeeScriptのみコンパイル
sass : scssファイルのみコンパイル
jade : jadeファイルのみコンパイル
serve : 各種ソースファイルの変更監視&ブラウザシンク
clean : コンパイルで生成されるァイルの一括削除
# TODO
- オフラインでも時刻表が見られるようアプリケーションキャッシュに対応
- 現状は次の電車orバスの出発時刻しか分からないため、時刻表自体を表示できるようにする
- 表示する路線や路線数をアプリ上で変更可能にする(現状はhtmlの書き換えが必要)
# 謝辞
祝日判定用に[Songmu / japanese.holiday.js](https://gist.github.com/Songmu/703311)を使わせてもらっています。