Rockxy の物語
なぜネイティブでオープンソースの macOS HTTP デバッグプロキシを作ったのか。
Rockxy が存在する理由
HTTP API を扱うすべての macOS 開発者は同じ壁にぶつかります。Charles Proxy は Java アプリで Mac 上では違和感があります。Proxyman はネイティブですがクローズドソースで、トラフィックの扱いを監査したりワークフローを拡張したりできません。ブラウザの DevTools はそのブラウザのトラフィックしか見えず、システムサービス、CLI ツール、バックグラウンドプロセスは完全に見逃します。
macOS ネイティブで、誰でもコードを読んで貢献できるオープンソースで、トラフィックがマシンから出ないローカルファーストのデバッグプロキシが欲しかったのです。Rockxy がそのツールです。
Rockxy とは
Rockxy は macOS 向けの完全なローカルデバッグワークステーションです。Mac 上のあらゆるアプリから HTTP、HTTPS、WebSocket、GraphQL-over-HTTP トラフィックをキャプチャします。ルールを適用してリクエストのリダイレクト、ブロック、スロットリングが可能です。ブレークポイントでリクエストやレスポンスを一時停止して編集。変更を加えてリクエストをリプレイ。差分ビューで 2 つのキャプチャしたトランザクションを並べて比較。JavaScript スクリプトでトラフィック操作を自動化。完全なデバッグセッションの保存と共有が可能です。
SwiftUI と AppKit で構築されたネイティブ macOS アプリとして動作します。Electron でも Java でもブラウザ拡張でもありません。プロキシエンジンは SwiftNIO で構築され、高スループット・低レイテンシのトラフィック処理を実現。リクエストリストは仮想スクロールの NSTableView を使用し、100,000 以上のリクエストをラグなく処理します。
私たちの価値観
オープンソース
Apache 2.0 ライセンス。すべてのコードを読めます。フォーク、拡張、コントリビュート。
プライバシーファースト
テレメトリなし。分析なし。クラウドなし。アカウント不要。トラフィックは Mac 上に留まります。
ネイティブパフォーマンス
SwiftUI + AppKit。SwiftNIO プロキシエンジン。仮想スクロール NSTableView。Mac のために作られました。
開発者所有
コミュニティ駆動開発。ベンダーロックインなし。サブスクリプションなし。永久無料。