This repository provides live and historical vegetable market prices for various markets across Kerala, India. The data is scraped from the VFPCK (Vegetable and Fruit Promotion Council Keralam) website and stored in structured JSON files.
data/live.jsondata/markets.json, data/items.jsondata/historic_data/<item_name>.jsonlive.json, items.json, markets.json).data/historic_data/.The live.json now stores each item under a normalized key (lowercase with underscores), along with its original name, market-wise prices, and last updated date.
{
"data": {
"amaranthus_green": {
"name": "Amaranthus Green",
"data": {
"ALUVA": {
"KERALA": { "wp": "30", "rp": "40" },
"OUT_OF_STATE": { "wp": "0", "rp": "0" }
},
"CHALAI": {
"KERALA": { "wp": "40", "rp": "45" },
"OUT_OF_STATE": { "wp": "0", "rp": "0" }
}
},
"lastUpdated": "September 29, 2025"
}
},
"date": "September 29, 2025"
}
"ALUVA", "CHALAI".KERALA / OUT_OF_STATE → Source of produce.
data/historic_data/<item_name>.json.Base Path: /api
GET /veg/markets
Response:
{
"data": [
{ "title": "Aluva", "id": "123" },
{ "title": "Chalai", "id": "456" }
],
"date": "September 29, 2025",
"message": "Markets listed successfully"
}
GET /veg/items
Response:
{
"data": [
{ "title": "Amaranthus Green", "id": "101" },
{ "title": "Ash Gourd", "id": "102" }
],
"date": "September 29, 2025",
"message": "Vegetables and Fruits listed successfully"
}
GET /items/:name?place=<marketName>
Example:
GET /items/Amaranthus Green?place=ALUVA
Response:
{
"data": {
"ALUVA": {
"KERALA": { "wp": "30", "rp": "40" },
"OUT_OF_STATE": { "wp": "0", "rp": "0" }
}
},
"date": "September 29, 2025",
"name": "Amaranthus Green",
"message": "Item details fetched successfully"
}
Notes:
place is optional; if omitted, prices for all markets are returned.name field in the response always returns the original product name.Scraper fetches market and item lists from VFPCK website.
Data is saved into:
items.json → List of vegetables & fruits.markets.json → List of Kerala markets.live.json → Daily updated prices.historic_data/<item>.json → Daily historical prices for each item.API serves the data via Express.js routes.
data/
├── items.json # List of all items
├── markets.json # List of Kerala markets
├── live.json # Latest prices
└── historic_data/ # Historical price data for each item
src/
├── routes/ # Express API routes
├── utils/scraper.js # Scraper logic
├── utils/data-fetcher.js # Local JSON data fetcher
├── index.ts # Server entrypoint
scripts/
└── live.ts # Daily price update and historic generation
MIT License
This project scrapes data from VFPCK. The data is provided as-is and may contain parsing errors. For official and verified information, refer to the original source.