{"id":47095390,"url":"https://github.com/unownone/spenddy-link","last_synced_at":"2026-03-12T14:03:45.449Z","repository":{"id":303307753,"uuid":"1015037846","full_name":"unownone/spenddy-link","owner":"unownone","description":"Simple Privacy Friendly chrome extension to track your spends and more!","archived":false,"fork":false,"pushed_at":"2025-07-24T14:18:35.000Z","size":1242,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-24T18:57:44.280Z","etag":null,"topics":["analytics","data","extension","link"],"latest_commit_sha":null,"homepage":"https://spenddy.fyi","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/unownone.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-06T22:30:39.000Z","updated_at":"2025-07-24T14:18:39.000Z","dependencies_parsed_at":"2025-07-06T23:32:31.348Z","dependency_job_id":"ebf6d477-0301-40fe-bb22-2bc346b48762","html_url":"https://github.com/unownone/spenddy-link","commit_stats":null,"previous_names":["unownone/spenddy-link"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/unownone/spenddy-link","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unownone%2Fspenddy-link","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unownone%2Fspenddy-link/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unownone%2Fspenddy-link/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unownone%2Fspenddy-link/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/unownone","download_url":"https://codeload.github.com/unownone/spenddy-link/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unownone%2Fspenddy-link/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30427725,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-12T14:00:25.264Z","status":"ssl_error","status_checked_at":"2026-03-12T13:59:52.690Z","response_time":114,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["analytics","data","extension","link"],"created_at":"2026-03-12T14:03:18.102Z","updated_at":"2026-03-12T14:03:45.423Z","avatar_url":"https://github.com/unownone.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Spenddy Link Browser Extension\n\nSpenddy Link is a lightweight, privacy-respecting browser extension that helps you seamlessly transfer your **Swiggy** order history to [Spenddy](https://spenddy.fyi/) where you can analyse your food spending patterns.\n\n## Install from Chrome Web Store\n\nSpenddy Link is now publicly available:\n\n[**Install Spenddy Link**](https://chromewebstore.google.com/detail/mibpmhoncjmniigifepbckapmoflkglo)\n\n![Spenddy Link Demo](assets/demo/demo_01.png)\n\nThe extension performs three things:\n\n1. Detects when you are logged in on Swiggy and confirms connectivity.\n2. Fetches your full order history on demand (the data never leaves your browser until you visit Spenddy).\n3. Exposes the fetched data to the Spenddy web app so it can be imported with a single click.\n\nBuilt with [WXT](https://wxt.dev/) + TypeScript, it works in both **Chrome** and **Firefox**.\n\n---\n\n## Prerequisites\n\n* **Node.js** ≥ 18\n* **pnpm** ≥ 8 (or swap `pnpm` with `npm` / `yarn` if you prefer)\n* **WXT CLI** (optional) – install globally with `npm install -g wxt` *or* run one-off commands via `pnpm dlx wxt@latest \u003ccommand\u003e`\n\n\u003e The repo already includes WXT as a dev dependency, so installing it globally is optional.\n\n---\n\n## Getting started (development)\n\n1. **Install dependencies**\n\n   ```bash\n   pnpm install\n   ```\n\n2. **Run the development server** – this builds the extension in watch-mode and starts a live-reloading environment:\n\n   ```bash\n   # Chromium / Chrome\n   pnpm dev\n\n   # Firefox (optional)\n   pnpm dev:firefox\n   ```\n\n   The compiled extension will be output to `.wxt/dist/` (Chrome) or `.wxt/dist-firefox/` (Firefox). Follow the *Load unpacked* instructions below to load it into your browser.\n\n---\n\n## Building a production bundle\n\nGenerate an optimised, production-ready build:\n\n```bash\n# Chrome build (default)\npnpm build\n\n# Firefox build\npnpm build:firefox\n```\n\nThe artefacts are placed in `.wxt/dist/` and are ready to be published to the respective web-store.\n\n### Creating a distributable zip\n\nIf you need a zipped upload bundle you can run:\n\n```bash\n# Chrome zip (default)\npnpm zip\n\n# Firefox zip\npnpm zip:firefox\n```\n\nThe zip file will appear at the project root.\n\n---\n\n## Loading the extension locally\n\n### Chrome / Edge (Chromium)\n\n1. Navigate to `chrome://extensions` (or `edge://extensions`).\n2. Enable **Developer mode**.\n3. Click **Load unpacked** and select the `.wxt/dist/` directory.\n\n### Firefox\n\n1. Navigate to `about:debugging#/runtime/this-firefox`.\n2. Click **Load Temporary Add-on…** and pick the `manifest.json` inside `.wxt/dist-firefox/`.\n\nThe extension icon should now appear in your toolbar.\n\n---\n\n## How to use\n\n1. **Open Swiggy and log in.**\n2. Click the **Spenddy Link** extension icon.  \n   • If everything is connected you will see a green \"Connected\" status.  \n   • Otherwise follow the on-screen steps to establish connectivity.\n3. Press **Fetch Order Data** – the extension will fetch your entire order history (this can take a minute for large accounts). Progress is displayed in real time.\n4. When finished, click **Go to Spenddy** to visit the Spenddy web app where the freshly fetched data is automatically detected and can be imported.\n\nThat's it – happy budgeting! 🎉\n\n---\n\n## Project structure (TL;DR)\n\n```\nentrypoints/\n  background.ts        # Service-worker style background script\n  spenddy.content.ts   # Content-script injected on the Spenddy site\n  swiggy.content.ts    # Content-script injected on Swiggy\n  popup/               # Extension popup (UI)\ncomponents/            # Shared TS utilities/helpers\nwxt.config.ts          # WXT configuration\n```\n\n---\n\n## Further documentation\n\n* [Extension Architecture](docs/ARCHITECTURE.md) – component diagram, message matrix, build process.\n* [Data Type Reference](docs/DATA_TYPES.md) – full TypeScript interfaces for Swiggy order payloads and storage keys.\n\n---\n\n## License\n\n[MIT](LICENSE) – © 2024 Spenddy\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Funownone%2Fspenddy-link","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Funownone%2Fspenddy-link","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Funownone%2Fspenddy-link/lists"}