Developed using Next.js and Bright Data's Scraping Browser, this e-commerce product scraping site is designed to assist users in making informed decisions. It notifies users when a product drops in price and helps competitors by alerting them when the product is out of stock, all managed through cron jobs.
- Next.js
- Bright Data
- Puppeteer
- Resend
- MongoDB
- Headless UI
- Tailwind CSS
π Header with Carousel: Visually appealing header with a carousel showcasing key features and benefits
π Product Scraping: A search bar allowing users to input Amazon product links for scraping.
π Scraped Projects: Displays the details of products scraped so far, offering insights into tracked items.
π Scraped Product Details: Showcase the product image, title, pricing, details, and other relevant information scraped from the original website
π Track Option: Modal for users to provide email addresses and opt-in for tracking.
π Email Notifications: Send emails product alert emails for various scenarios, e.g., back in stock alerts or lowest price notifications.
π Automated Cron Jobs: Utilize cron jobs to automate periodic scraping, ensuring data is up-to-date.
and many more, including code architecture and reusability
Follow these steps to set up the project locally on your machine.
Prerequisites
Make sure you have the following installed on your machine:
Cloning the Repository
git clone https://github.com/sholajegede/pricewatcher.git
cd pricewatcher
Installation
Install the project dependencies using npm:
npm install
or
bun install
or
yarn install
Set Up Environment Variables
Create a new file named .env
in the root of your project and add the following content:
#BRIGHTDATA
BRIGHT_DATA_BROWSER_WS=
#MONGODB
MONGODB_URI=
#RESEND
RESEND_API_KEY=
Replace the placeholder values with your actual credentials. You can obtain these credentials by signing up on these specific websites from BrightData, MongoDB, and Resend
Running the Project
npm run dev
or
bun run dev
Open http://localhost:3000 in your browser to view the project.