Project Description
I run an informational website focused on peptide research, and I'm ready to make it more useful to visitors by adding a real-time peptide price comparison tool. The widget should automatically pull current prices directly from official supplier websites only — no third-party aggregators or user-submitted data. When a supplier updates a price, the change needs to surface on my site immediately or within seconds, so a live API connection or efficient scrape-and-cache strategy is essential.
Here's what I need from you:
A lightweight, embeddable module (React, Vue, or vanilla JS — open to your recommendation) that lists peptides, suppliers, pack sizes, and up-to-date prices side-by-side, with a toggle between total price and price-per-mg.
A background service that fetches and refreshes the data in real time without over-querying or breaching any supplier terms of service.
A simple admin screen where I can add or remove suppliers, map new product SKUs, configure affiliate parameters per supplier, and set fallback behaviour if a site is temporarily unreachable.
Clear documentation so I can maintain the feed after hand-over.
Acceptance criteria
The comparison table displays at least five test peptides with accurate live prices from two or more official suppliers.
Latency from supplier update to on-site display is under two minutes.
No supplier site experiences more than one request per 60 seconds per product.
Failed scrapers serve last-known prices with a visible "last updated" timestamp rather than breaking the public view.
All code is delivered, commented, and installable on a standard LAMP or Node stack.
For reference, the tool should function similarly to aminoprices.com, peptiprices.com, and peptidepricing.com — filterable peptide grid, vendor side-by-side comparison, total vs. price-per-mg toggle, and supplier profile pages.
If you have experience with real-time data integration, web scraping ethics, and clean front-end work, I'd love to see how you'd approach this and how quickly we can roll it out.