---
tags: fortech
---
# Price Tracker
### Short description
Price Tracker is a tool that will monitor a product price on eMAG (multiple merchants will be added in the future).
### Problem
We all want to buy the product at the best price possible, and whenever we see a product discounted we are not sure if the new price is a good deal.
### Solution
Price Tracker will monitor a product price for you, and whenever that price goes down you will receive a notification recommending the product. The application will receive a product URL (ex: [iPhone 12](https://www.emag.ro/telefon-mobil-apple-iphone-12-64gb-5g-black-mgj53rm-a/pd/DBTJ27MBM/?X-Search-Id=08715ca0491a7357c9bd&X-Product-Id=7236094&X-Search-Page=1&X-Search-Position=0&X-Section=search&X-MB=0&X-Search-Action=view)) and based on the URL will extract the merchant and initiate tracking product price evolution over time.
<!-- ### Flow
```flow
st=>start: User
op=>operation: Login
op2=>operation: Add product url
e=>end: End
st->op->op2->cond
```
-->
### Technical specs
#### Backend
- we will use NodeJS
- we will use TypeScript
- we will use either Express, Koa or Hapi
- we will create a microservice arhitecture
- web crawler service
- authentication service
- cronjob service
- ...
- we can select a different DB for each service (MongoDB, PostgreSQL, etc)
#### Frontend
- we will use ReactJS
- we will use TypeScript
- we will use one of the folowing state management solutions: Redux, Mobx or Context with useReducer
#### Mobile (if we want to experiment in this area also)
- we will use either ReactNative or Flutter