このプロジェクトについて
Spenddy Linkは、プライバシーを尊重する軽量なブラウザ拡張機能で、Swiggyの注文履歴をSpenddy Webアプリケーションにシームレスに転送し、食費の支出パターンを分析できます。
## 機能概要
この拡張機能は3つのコア機能を実現します:
1. ユーザーがSwiggyにログインしていることを検出し、接続を確認します
2. オん demandで注文履歴全体を取得し、データをブラウザ内に保持します(ユーザーがSpenddyを訪れるまではデータはデバイスに残りません)
3. 取得したデータをSpenddy Webアプリに提供し、ワンクリックでインポート可能にします
## インストール
Chrome Web Storeから入手可能です。Firefoxもサポートしています。WXTとTypeScriptで構築されています。
## 前提条件
- Node.js ≥ 18
- pnpm ≥ 8(または npm / yarn)
- WXT CLI(オプション;dev dependencyとして含まれています)
## 開発方法
`pnpm install`で依存関係をインストールし、Chromium/Chrome向けに`pnpm dev`、Firefox向けに`pnpm dev:firefox`を実行します。ビルド出力はそれぞれ`.wxt/dist/`または`.wxt/dist-firefox/`に出力されます。
本番ビルド:`pnpm build`(Chrome)または`pnpm build:firefox`。Zipバンドルは`pnpm zip`または`pnpm zip:firefox`で生成できます。
ローカルロードの場合、`chrome://extensions`(または`edge://extensions`)でデベロッパーモードを有効にし、「展開されていないパッケージを読み込む」をクリックしてdistディレクトリを選択します。Firefoxの場合は`about:debugging#/runtime/this-firefox`で使用し、Firefox distからのmanifest.jsonを読み込んでください。
## 使用方法
1. Swiggyを開いてログインする
2. Spenddy Link拡張機能のアイコンをクリックし、緑色の「Connected」ステータスを確認する
3. 「Fetch Order Data」を押す — プログレスはリアルタイムで表示される
4. 「Go to Spenddy」をクリックしてデータをSpenddy Webアプリにインポートする
## プロジェクト構造
- `entrypoints/background.ts` — サービスワーカーバックグラウンドスクリプト
- `entrypoints/swiggy.content.ts` — Swiggyに注入されるコンテンツスクリプト
- `entrypoints/spenddy.content.ts` — Spenddyに注入されるコンテンツスクリプト
- `entrypoints/popup/` — 拡張機能ポップアップUI
- `components/` — 共有TypeScriptユーティリティ
- `wxt.config.ts` — WXT設定
アーキテクチャおよびデータ型の参照に関する詳細ドキュメントもあります。
ライセンス: MIT — © 2024 Spenddy。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.