このプロジェクトについて

Auroraは、訪問者のデバイスに何も保存せずにウェブサイトのトラフィックを測定するように設計された、オープンソースのセルフホスト型Web解析アプリケーションです。クッキー、localStorage、フィンガープリントを一切使用せず、イベントデータはオペレーターが管理するPostgreSQLデータベースに保存されます。ブラウザ用トラッキングスクリプトの転送サイズは2.4 KBと報告されています。 訪問者は、IPアドレス、ユーザーエージェント、サーバー側のソルトから派生した回転式HMACを通じて識別されます。ハッシュの入力は毎日回転するため、ビジターIDを日を跨いで紐付けることはできず、ブラウザから送信される情報は個人を追跡できないようになっています。このアプローチは、localStorageなどの端末設備への情報保存がクッキーと同様に扱われるため、ePrivacy指令第5条(3)に関連するものとして提示されています。 ダッシュボードでは、選択した期間とタイムゾーンにおける訪問数、ユニークビジター数、セッション数、直帰率、平均セッション時間が表示されます。Rechartsによる時系列グラフのほか、ページ、リファラー、流入チャネル、国、ブラウザ、OS、デバイス、言語、UTMパラメータ別の内訳が含まれています。カスタムイベントにはスカラー型のプロパティとISO-4217通貨による収益値を保持させることができます。また、サイトを公開設定にすることで、ログインなしで読み取り専用の解析ダッシュボードを公開できます。 デプロイは、linux/amd64およびlinux/arm64向けに公開されているDockerイメージを通じて可能です。必要な設定にはDATABASE_URLとSESSION_SECRETが含まれ、本番環境ではAURORA_SALTが必要です。信頼されたプロキシホップでクライアントIPデータを決定させるため、AURORA_IP_HEADERの設定が強く推奨されています。未設定の場合、アプリケーションは警告を表示し、クライアントが設定可能なヘッダーにフォールバックします。AURORA_COUNTRY_HEADERは、エッジからの国コード取得用にオプションで提供されています。 サイトを追跡するには、ダッシュボードからサイトIDを含むscriptタグが提供されます。ページビューとクライアント側のルート変更は自動的に追跡されます。カスタムイベントはグローバルなaurora関数を呼び出し、スクリプトの読み込み前に行われた呼び出しはキューに保存されます。プロパティはスカラー型のみ受け付け、最大24キーまで設定可能です。 開発にはNode 20+とpnpm 10が必要です。プロジェクトはpnpmワークスペース構成で、React Routerを使用したWebアプリケーションと、配信スクリプトにバンドルされるトラッカーパッケージで構成されています。PostgreSQL上のDrizzle、Tailwind CSSとshadcn/ui、Recharts、Vitest、およびoxlint/oxfmtを使用しています。コミットはConventional Commitsに従い、リリースはrelease-pleaseで自動化され、バージョニングはSemVerに従っています。Aurora 4はゼロからの書き直しであり、1.xまたは2.xからの移行パスはないと説明されています。プロジェクトはMITライセンスで提供されています。