Twitterのリアルタイム検索サービス
流ツイを作る上で参考にしたリアルタイム検索サービスです。特に『Tweet Search Stream』に関しては開発者のGimiteさんがソースコードを公開してくれていたため、ストリーミング接続のロジック等を参考にさせていただきました。
jitt.li - Your realtime twitterwall.
jitt.li is an websocket-powered realtime twitterwall. You will see all new tweets with the hashtag you selected instantly on the wall. There is no polling and therefore no delay! Currently this project is still under heavy development but it should be mostly stable. If you want to stay up to date you should visit the jitt.li trello-board and follow me on twitter.
Tweet Search Stream
Twitter Streaming APIを使ったリアルタイムTwitter検索です。 新しいTweetが投稿されると、数秒で反映されます。 実験的なサービスであり、予告なく停止する場合があります。
Falcon - iPhone、iPad対応Twitterクライアント
Falconはキーワード、ハッシュタグ検索、トレンドの閲覧に特化したTwitterをもっと楽しくするiPhone、iPad対応のTwitterクライアントです。FalconはTwitterの新しい楽しみ方を提案していくTwitterクライアントです。
バックエンド
流ツイのバックエンドで動くPHPやJSのライブラリです。ログイン時はTwitterAPI(search/tweets)に定期的にAjaxリクエストを送るだけなので、ここに記載しているのは主に未ログイン時の検索で使用するものです。 TwitterAPIの都合上、検索用のStreamingAPIは1アプリ1コネクションしか張れないので、ログインしていない状態では検索リクエストを受けるたびにコネクションを張り直しています。 サーバーではRatchetのWebSocketサーバーと検索用のStreamingプログラムを並列で実行し、プロセス間のやり取りはZeroMQを使い非同期に行っています。 流れとしてはStreamingプログラム上で検索ワードにヒットしたツイートをZeroMQでRatchet側に送り、検索ワードをSubscribeしているユーザーに配信しています。クライアントサイドはAutobahnJSでサーバーとWebSocket接続をしています。
Ratchet - PHP WebSockets
Ratchet is a PHP WebSocket library for serving real-time bi-directional messages between clients and server
WebSocketを実現するために使用したライブラリ。
Distributed Computing Made Simple - zeromq
ØMQ \zeromq\: Ø The socket library that acts as a concurrency framework. Ø Carries messages across inproc, IPC, TCP, and multicast. Ø Connect N-to-N via fanout, pubsub, pipeline, request-reply. Ø Asynch I/O for scalable multicore ...
プロセス間のメッセージ通信を行うために使用したライブラリ。
themattharris/tmhOAuth · GitHub
An OAuth 1.0A library written in PHP.
TwitterAPIを使用するために使用したPHPライブラリ。
AutobahnJS
Autobahn|JS is an open-source JavaScript networking library created by the Autobahn project that implements The Web Application Messaging Protocol (WAMP) for creating real-time clients that do asynchronous RPC and PubSub over WebSocket.
RatchetとWebSocket接続するために使用したJSライブラリ。
フロントエンド
流ツイのフロントエンド開発で使用したCSSやJSライブラリです。デザインはPureのexample layoutsのEmailをカスタマイズして作りました。 このページ自体もSide Menuをもとに作られています。
Pure
A set of small, responsive CSS modules that you can use in every web project.
サイトのベースデザインとして使用したCSSフレームワーク。
Font Awesome
Font Awesome, the iconic font designed for Bootstrap
各アイコンで使用したフォントセット。
jQuery
jQuery: The Write Less, Do More, JavaScript Library
Prefix free
Prefix free: Break free from CSS vendor prefix hell!
CSSのベンダープレフィックスを自動で付けてくれるJSスクリプト。
MiniJs - Notification
A simple but flexible notification plugin with the minimum required functionalities.
見やすい通知バーを表示してくれるjQueryプラグイン。
tipsy - Facebook-style tooltip plugin for jQuery
Tipsy is a jQuery plugin for creating a Facebook-like tooltips effect based on an anchor tag's title attribute.
シンプルなツールチップを表示してくれるjQueryプラグイン。
その他
FuelPHPでWebSocketする(これまでの)まとめ
暫く放置してしまっていましたが、これまでに書いた、FuelPHPでWebSocketを扱うためのリンクや記事をまとめておきます。
Ratchetを使ったWebSocketを実装する上でこのブログほどお世話になったものはありません。各モジュールのインストール手順やプログラムの実装方法がサンプルプログラムとともにわかりやすくまとめられています。公式だけではよく理解できなかった部分も多くとても助けられましたm(_ _)m
web_socket.js - HTML5のWeb SocketをFlashを使って実装
HTML5のWeb Socketを、Flashの力を借りて実装してみました。 gimite / web-socket-js - GitHub Web SocketはHTML5に...
古いIEでもWebSocketができるようにFlashを使っているのですが、その実装する方法を紹介している『Tweet Search Stream』開発者のブログです。
twitSandbox - Twitter API v1.1検証用のWebアプリケーション
twitSandboxは、Twitter APIを利用したアプリケーション制作を支援するWebアプリケーションです。(Version1.1対応済み)
TwitterAPIの返り値をブラウザ上で確認できる便利なWebサービスです。度々お世話になりました。
PlaceIt
Your iPhone, iPad and other device screenshots automatically processed on the fly to be placed within a realistic environment of your choosing
iPhoneやMacのディスプレイに任意の画像をはめ込んだ画像を生成できるサービスです。流ツイはサイト上でPlaceItを利用して生成した画像を使用しています。