How kalikibhuvanesh/pricewatch works
PriceWatch is an Amazon.in price-monitoring and market-intelligence application. Users search for products, track ASINs, monitor prices and sellers, and review trends, competition, location-specific Buy Box results, and alerts in a browser dashboard. The API routes requests to scraping, analytics, and watchlist operations; scheduled checks update MongoDB history and can send email alerts. The route, product, and analytics modules are present in the tree, but their source excerpts are incomplete or unavailable, so some internal wiring is left out.
Main entry points: index.js Express server · bearingSearch.js Bearing routes · priceChecker.js Price checker · scraper.js Amazon scraper
Components 18
Dashboard
- Dashboard SPA
frontend.html
API
- Express server
src/index.js - Watchlist routes
src/routes/products.js - Product search
src/routes/search.js - Bearing routes
src/routes/bearingSearch.js - Analytics routes
src/routes/analytics.js
Market intelligence
- Amazon scraper
src/services/scraper.js - Location Buy Box
src/services/locationScraper.js - Competitive analysis
src/services/competitiveAnalytics.js
Price monitoring
- Price checker
src/jobs/priceChecker.js - Alert email service
src/services/emailService.js
Persistence and identity
- JWT verification
src/middleware/auth.js - Tracked products
src/models/Product.js - MongoDB connection
src/config/database.js
Other components
- PriceWatch user
- Amazon.in
- Firebase Auth
- SMTP provider
Connections 24
- PriceWatch user → Dashboard SPA: uses dashboard
- Express server → Dashboard SPA: serves
- Dashboard SPA → Express server: requests API
- Express server → Watchlist routes: mounts routes
- Express server → Product search: mounts routes
- Express server → Bearing routes: mounts routes
- Express server → Analytics routes: mounts routes
- Express server → MongoDB connection: connects
- Express server → Price checker: starts checker
- Product search → Amazon scraper: fetches search page
- Amazon scraper → Amazon.in: scrapes listings
- Bearing routes → Location Buy Box: checks locations
- Bearing routes → Amazon scraper: scrapes sellers
- Bearing routes → Tracked products: reads trending history
- Bearing routes → Competitive analysis: analyzes sellers
- Analytics routes → Competitive analysis: analyzes prices
- Analytics routes → Tracked products: reads tracked data
- Watchlist routes → JWT verification: verifies user
- JWT verification → Firebase Auth: fetches signing keys
- Price checker → Tracked products: loads and saves
- Price checker → Amazon scraper: checks prices
- Price checker → Competitive analysis: evaluates alerts
- Price checker → Alert email service: sends triggered alerts
- Alert email service → SMTP provider: sends email