mirror of
https://github.com/primedigitaltech/azon_seeker.git
synced 2026-10-05 07:13:06 +08:00
* feat: add Amazon collection metadata and reliable sync * fix: route extension sync through configured server * chore: release extension v0.7.13 * fix: handle extension ports across BFCache navigation * fix: classify bottom Sponsored Brands video placements * fix: exclude hidden Amazon ad cards * fix: derive Amazon result page from URL * fix: ignore hidden Amazon sponsored products * fix: preserve base Amazon product collection * fix: bind Amazon results to visible page * fix: classify visible Amazon ad formats * fix: wait for lazy Amazon ad modules * perf: reduce Amazon lazy-load scroll stops * fix: classify Amazon sponsored brand and video search ads Co-authored-by: Cursor <cursoragent@cursor.com> * fix: collect Shop by type thematic SP ads via redirect chains without data-asin Co-authored-by: Cursor <cursoragent@cursor.com> * fix: classify sponsored ads across new Amazon templates --------- Co-authored-by: Cursor <cursoragent@cursor.com> Co-authored-by: PetrichorFun <127877748+PetrichorFun@users.noreply.github.com>
98 lines
2.8 KiB
Markdown
98 lines
2.8 KiB
Markdown
# Azon Seeker
|
|
|
|
## Introduction
|
|
|
|
Azon Seeker is a browser extension designed to collect and manage product information from Amazon and other platforms. It supports importing, exporting, and previewing product and review data, making it a powerful tool for e-commerce research and data analysis.
|
|
|
|
---
|
|
|
|
## Features
|
|
|
|
- 🛒 **Collect Product Data:** Easily gather product details and reviews from Amazon and other websites.
|
|
- 📦 **Import/Export:** Supports importing and exporting data in Excel format for further analysis.
|
|
- ☁️ **Cloud Export:** Export your data to the cloud for backup or sharing.
|
|
- 🔄 **Reliable Server Sync:** Collected Amazon data is durably queued, retried in the background, and removed from the queue only after the server confirms persistence.
|
|
- 📊 **Data Table:** View, filter, and manage collected data in a user-friendly table.
|
|
- 🖼️ **Image Preview:** Hover to preview product images.
|
|
- 🌐 **Multi-browser Support:** Works with Chromium-based browsers and Firefox.
|
|
- 🧩 **Modern UI:** Built with Vue 3 and Naive UI for a clean, responsive experience.
|
|
|
|
---
|
|
|
|
## Get Started
|
|
|
|
### 1. Prepare Requirements
|
|
|
|
Make sure the following software is installed:
|
|
|
|
- [Node.js v22+](https://nodejs.org/)
|
|
- [pnpm](https://pnpm.io/)
|
|
|
|
### 2. Clone this Repository
|
|
|
|
```shell
|
|
git clone https://github.com/primedigitaltech/azon_seeker.git
|
|
cd ./azon_seeker/
|
|
```
|
|
|
|
### 3. Setup the Webext-bridge
|
|
|
|
```shell
|
|
cd ./webext-bridge
|
|
pnpm i
|
|
pnpm build
|
|
cd ../
|
|
```
|
|
|
|
### 3. Install the Project's Dependencies
|
|
|
|
```shell
|
|
pnpm i
|
|
```
|
|
|
|
### 4. Run in Development Mode
|
|
|
|
```shell
|
|
pnpm dev
|
|
```
|
|
|
|
### 5. Load Extension on Browser
|
|
|
|
1. Open the browser extension page.
|
|
2. Toggle on development mode.
|
|
3. Load the extension using the `extension/` folder.
|
|
|
|
## Build
|
|
|
|
### 1. Make Sure Setup Successfully
|
|
|
|
Following the step of Get Started to make sure setup successfully.
|
|
|
|
### 2. Build Project
|
|
|
|
```shell
|
|
pnpm run build # For Chromium Browser (Microsoft Edge .etc)
|
|
pnpm run build-firefox # For Firefox
|
|
```
|
|
|
|
### 3. Pack Extension
|
|
|
|
```shell
|
|
pnpm run pack:7z
|
|
```
|
|
|
|
After the build is completed, the Chromium package will be generated in
|
|
`build/extension-v<version>.7z`.
|
|
|
|
## Amazon Server Synchronization
|
|
|
|
- Development builds use `127.0.0.1:8001` by default.
|
|
- Production builds use `amzplugin.rekeymed.com` over HTTPS/WSS by default.
|
|
- Override either target at build time with `VITE_REMOTE_HOST=host:port`.
|
|
- The extension persists unsent batches in `browser.storage.local` and retries once per minute.
|
|
- Search and detail records include a client-generated `syncId`; the server uses it as a unique idempotency key.
|
|
- The side panel displays pending, syncing, synchronized, and failed states and provides a manual retry action.
|
|
|
|
Before publishing a production package, deploy the backend migrations and verify that the
|
|
production `/openapi.json` contains `syncId`, `adType`, and `strikethroughPrice`.
|