ブックマーク / www.moongift.jp (13)

  • これはnode.jsの時代が来るか!?全て揃ったnode.jsフレームワーク·Tower.js MOONGIFT

    Tower.jsはフルスタックのnode.js用Webアプリケーションフレームワークです。 こ、これはやばい…。ついにnode.jsの時代が来るかもしれない、そう感じさせるWebアプリケーションフレームワークがTower.jsです。 インストールはnpmで簡単にできます。 まず新しいアプリケーションを作成します。 Scaffoldで簡単にコントローラ、モデル、ビューを生成。 生成された際の構成はこんな感じです。 towerコマンドのオプションです。 Webサーバを立ち上げ場合です。 Tower.jsはMongoDBをデータベースに、Redisはバックグランドジョブ、CoffeeScriptをメインの記述に使いつつ、Jasmineをテストフレームワーク、jQueryも使えるフレームワークです。メール、マイグレーション、MVC、RailsばりのO/Rマッピング、バリデーション、ルーティング、B

  • クライアントサイドだけでファイルを保存する·FileSaver.js MOONGIFT

    FileSaver.jsはクライアントサイドでデータを生成しダウンロードするJavaScriptライブラリです。 Webアプリケーションが増える中、Webブラウザ上で作ったコンテンツをそのままエクスポートする時に使えるライブラリがFileSaver.jsです。 まず画像を保存するデモです。 こんな感じに適当にマウスで文字を書きます。 ファイル名をつけて保存ボタンを押すと保存が実行されます(ウィンドウ下部にダウンロードファイルがあります)。 ダウンロードされたファイルです。内容が動的に生成されているのが分かります。 同様にテキストの保存もできます。 テキストファイルの内容も動的です。UTF-8で作成されます。 HTMLファイルの保存もできます。 FileSaver.jsはコンテンツをCanvasタグにレンダリングし、それをダウンロードしているようです。HTML5対応ブラウザに限定されますが、

  • 全てはリポジトリが知っている。バグがどこにあるのか予測·Bugspots MOONGIFT

    BugspotsはGoogleのバグ予測アルゴリズムをRubyで実装したテスト補助ツールです。 禅問答のようですが、コードを書かなければバグは作られません。逆に言えばよく更新されているファイルこそバグを含みやすいということです。どこにバグが潜んでいる可能性があるか、それを発見するツールとして使えるのがBugspotsです。 インストールします。RubyGemsからインストールできます。 実行結果のサンプルです。HotSpotsで並んだものの数値が高いものがバグを含みやすいファイルになります。 こんな感じでカラー表示で結果が出力されます。 BugspotsはGitのリポジトリを解析し、頻繁に更新されているファイルと独自のアルゴリズムによってバグの発生可能性を数値化します。絶対という訳ではないですが、チェックしてみるだけでも思わぬバグの発見につながるかも知れません。なお、BugspotsはGo

  • エンタープライズ向けGitのWebフロントエンド·KoshiNuke MOONGIFT

    KoshiNukeはGitを企業内で用いる際に使えるアプリケーションライフサイクルマネジメントシステムのモックアップです。 Gitが徐々に企業でも利用されるようになっている中、Gitをベースにしたアプリケーションライフサイクルマネジメントが求められるようになっています。そこでモックアップとして紹介したいのがKoshiNukeです。 コードをダウンロードした場合の表示です。 デモ阪の画面です。格好いいです。 リポジトリの履歴です。 コードツリーも表示できます。 コミットログです。個々のコミットログ詳細は見られませんでした。 ブランチグラフです。GitHubと違って縦に進んでいきます。 Wikiは編集機能が備わっています。 Wikiの編集履歴です。 KoshiNukeはあくまでもモックアップなのでビューのみですが、それでも十分に便利そうな機能がそろっているのが分かります。後はバックエンドをRE

  • 30分で開発マシンに変身させる魔法のスクリプト·Laptop MOONGIFT

    LaptopはUbuntu、Mac OSXRuby on Rails開発環境をまとめてセットアップします。 これからRailsの勝発をはじめてみたい、そう思ったMac OSX/Ubuntu利用者にお勧めなのがLaptopです。30分であなたのマシンが開発マシンに様変わりします。 例えばこれがMac OSX用。 こちらはUbuntu用。 インストールされるソフトウェアです。 Laptopはたった一行のコードを実行するだけで多種多様なソフトウェアが一気にインストールされます。Homebrew(Mac OSXの場合のみ)/QT/Ack/Tmux/Postgres/Redis/ImageMagick/RVM/Ruby 1.9.2/Rails/Heroku/Tapsなどがインストールされます。ネットワーク状況によりますが、だいたい30分はかかるとのことです。 LaptopはBashスクリプト製、M

  • WebSocketを使えばリアルタイムメッセージの夢が広がる·WebSocket client for Titanium Mobile MOONGIFT

    WebSocket client for Titanium MobileはTitanium MobileでWebViewを使わずにWebSocketを直接扱えるようにするライブラリです。 Webブラウザでリアルタイムにメッセージを交換したいならば使ってみたいのがWebSocketです。そんなWebSocketを使う場合、Webブラウザ(またはコンポーネント)を使いますが、直接扱ってしまおうというのがWebSocket client for Titanium Mobileです。Titanium開発者は必見です。 まずサーバを立ち上げます。サンプルサーバが付属していますのでそれを使います。 ついでサンプルのiPhoneクライアントを立ち上げます。 コネクトを実行するとサーバ側で接続が確認できます。 メッセージを飛ばせば表示されます。 iPhone側ではこんな感じに表示されます。 切断しました。

    WebSocketを使えばリアルタイムメッセージの夢が広がる·WebSocket client for Titanium Mobile MOONGIFT
  • ユーザのテキスト表示サイズ変更を検知するjQueryライブラリ·jquery-textresize-event MOONGIFT

    jquery-textresize-eventは画面に表示されている文字サイズを変更した際に検知できるjQueryライブラリです。 もし閲覧しているWebサイトの文字が小さかったり、逆に大きすぎる場合には拡大/縮小メニューを使うと思います。そんな時にそれを検知して別なスクリプトを実行できるのがjquery-textresize-eventです。 文字を大きくしたり、小さくしたりするとコンソールにresizedというログメッセージができます。 コードはこんな感じでtextresizeをbindします。 jquery-textresize-eventはspanタグの隠し要素を追加して、それの高さと変更後の高さを常時比較することで検知できるようにしています。アイディアが秀逸です。 jquery-textresize-eventはJavaScript/jQuery製のソフトウェア(ソースコードは公

  • 要チェック!Webベース、Ajaxを使った表計算ソフトウェア·dhtmlxSpreadsheet MOONGIFT

    dhtmlxSpreadsheetは多数のWebブラウザに対応したWebベース表計算ソフトウェアです。 WebベースでもExcelのような編集がしたい、そんなニーズに応えるのがdhtmlxSpreadsheetです。PDFExcelでのエクスポートにも対応した、すごいソフトウェアです。 まさに表計算といった感じの画面です。 計算式の埋め込みももちろんできます。 値を更新すれば計算式の入ったセルも更新されます。 セルの背景、文字色の変更もできます。 右寄せ、中央寄せも可能です。 計算式も多数用意されています。 マウスのドラッグで範囲選択可能です。 PDFエクスポート(実際には外部サービス利用)できます。日語は表示されません。 同様にExcelでの出力にも対応しています。こちらは日語に対応しています。 設定です。 セルの幅は変更できますが、カラムをクリックして全体選択といったことはできま

    要チェック!Webベース、Ajaxを使った表計算ソフトウェア·dhtmlxSpreadsheet MOONGIFT
  • トレンドをつかみ取れ。トピックモニタリングソフトウェア·Tattler MOONGIFT

    Tattlerはブログやメディアサイト、ソーシャルメディアからデータをアグリゲートし、知りたいトピックを抽出するソフトウェアです。 情報は日々、刻々と流れていきます。そんな情報流れを蓄積し、そこから必要な情報を抽出するのがTattlerです。リサーチやジャーナリスト、トレンドウォッチャーのためのソフトウェアです。 インストールはウィザードに沿って行います。まずデータベースの設定です。 テーブルを作成しています。 Mention記事です。 記事の詳細です。コメントしたりできます。 デモ動画からのスクリーンショットです。記事が並んでいます。 マルチメディアなどを選ぶとフィードの種類によってフィルタリングされるイメージです。 ニュース系記事の一覧です。 Tattlerは様々なWebサイトのコンテンツを登録して、その反応によって並び替えを行っているようです。また期間によって区切れるので、今話題の情

  • JavaScriptに便利なメソッドを盛り込んだライブラリ·mofmof.js MOONGIFT

    mofmof.jsはJavaScriptを積極的に拡張したライブラリで、Number/Array/Stringに便利なメソッドを追加しています。 JavaScriptは今やWebだけでなく、様々な環境で使われるようになっています。そこで基礎になりえるライブラリとして紹介したいのがmofmof.jsです。かゆい所に手が届く、便利なメソッドがたくさん追加されています。 コード例です。コピーメソッド。 日付周りの拡張も多いです。 Hashを取り扱うメソッドも多数用意されています。 二つのHashをミックスします。 Hashからキーと値を取り出します。 Hashのキーだけを抽出します。 mapメソッドです。 実行するたびにインクリメントされるユニークな値を返します。1秒間に100万回実行したとしても285年間ユニークであり続けます。 一気に配列を生成します。 文字列を置換しつつ生成します。 検索メ

  • IE6から使えるSVG/VMLを使った高機能JavaScriptグラフライブラリ·Highcharts MOONGIFT

    HighchartsはSVG/VMLを使って描画するJavaScript製のグラフライブラリです。 Webサービスにおいてグラフを使うとデータのインパクトが違います。だからこそ使い勝手の良いグラフライブラリを積極的に使っていくべきです。HighchartsはSVGを基として多様なWebブラウザに対応したグラフライブラリになります。 折れ線グラフです。 Ajaxによるデータロード対応です。 グラデーションをかけることもできます。 滑らかな曲線です。 アイコンを貼付ける例です。 プロットのみで。半透明なドットを使っています。 エリアグラフです。 マイナスの値にも対応しています。 積み上げグラフです。 棒グラフです。 左右比較型の棒グラフです。 複数のデータを並べられます。 棒グラフもマイナス値を出せます。 こんな感じの棒グラフも。 さらにドリルダウン対応です。 HTMLのテーブルからデータを

  • リアルタイムプレビューのついたWebベースのJavaScript/HTMLエディター·JS Bin MOONGIFT

    JS BinはWebブラウザ上でJavaScriptHTMLコードを編集しつつ、その結果をプレビューできるエディターです。 JavaScriptは単体で使うというよりもHTMLと組み合わせて使うことのが多いかと思います。そんな時にWebブラウザ上でコードを試しためし実行できるのがJS Binです。 デフォルトの表示です。左側がJavaScript、右側がHTMLとなっています。 レンダー表示です。先ほどのJavaScriptHTMLを合わせて実行した結果です。 右側にリアルタイムプレビューを追加しました。JavaScriptを修正すると即座にプレビューに反映されます。 HTMLJavaScriptライブラリを追加できます。 jQueryを追加した場合です。HTMLソースにscriptタグが追加されています。もちろんJavaScript側もjQueryの関数が使えるようになります。 保

  • MIT LicenseをWebベースで修正、管理·MIT License.org MOONGIFT

    MIT License.orgはMIT Licenseの発行を補助してくれるソフトウェアです。 オープンソース・ソフトウェアでMIT Licenseを選択される人が増えていますが、ライセンスの原文を都度コピーしたり、ライセンサー部分を修正するのは面倒です。そこで面倒なところを解消してくれるMIT License.orgを使ってみましょう。 MIT License.orgのトップページです。MIT Licenseの原文が表示されています。 任意のURLを指定して、そこにオプションパラメータを飛ばして実行します。URLが取られていなければ取得したURLが返ってきます。 取得したURLにアクセスすると自分の指定したパラメータに置き換わったMIT Licenseが表示されます。後はこのURLを指定すれば良いという訳です。 オプションです。フォーマットやテーマも指定できます。バージョン管理も可能です

  • 1