New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

vinbudin

Package Overview
Dependencies
Maintainers
1
Versions
13
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

vinbudin

Fetches product data from www.vinbudin.is

  • 2.3.0
  • latest
  • npm
  • Socket score

Version published
Weekly downloads
10
decreased by-28.57%
Maintainers
1
Weekly downloads
 
Created
Source

vinbudin

vinbudin

npm version npm downloads License

An NPM package to fetch product data from Vínbúðin.

Features

  • ⚡ Fetch categorized product data from www.vinbudin.is
  • 🏷️ Fully typed API
  • ✅ Fully validated product data

Setup

# pnpm
pnpm add -D vinbudin

# npm
npm i -D vinbudin

# yarn
yarn add -D vinbudin

[!WARNING] This package is native ESM and does not provide a CommonJS export. If your project uses CommonJS, you will have to convert to ESM. Please don't open issues for questions regarding CommonJS / ESM.

Why?

Vínbúðin does not provide an open API. This package can be used to analyse their product data or create something else from it.

Basic Usage

import { getProducts } from 'vinbudin'

getProducts().then((products) => {
  // Handle the data
  console.log(products)
})

// You can also provide an options object to only get specific data
getProducts({
  beer: true,
  bubbly: true,
}).then((products) => {
  // Handle the data
  console.log(products)
})

Example response

{
  productId: 28304,
  productName: 'Ölverk Sóði Þorrabjór',
  productBottledVolume: 330,
  productAlchoholVolume: 7,
  productPrice: 642,
  productFoodCategories: '',
  productCategory: {
    name: 'beer',
    id: [ '60', '61', '62' ],
    taste: true,
    sweet: false,
    subCategories: null
  },
  productSubCategory: null,
  productCountryOfOrigin: 'ísland',
  productSpecialReserve: false,
  productOrganic: false,
  productContainerType: 'DS.',
  productPlaceOfOrigin: '',
  productDistrictOfOrigin: '',
  productWine: '',
  productInventory: 0,
  productYear: '',
  productDateOnMarket: '2024-01-11T00:00:00',
  productIsTemporaryOnSale: false,
  productIsGift: false,
  productIsInThema: false,
  productIsAvailableInStores: true,
  productIsSpecialOrder: false,
  productStoreSelected: null,
  productTasteGroup: '61BE',
  productTasteGroup2: 'BPALE',
  productTasteGroup2Description: null,
  productPackagingClosing: '',
  productPackagingContainer: 'ALDOS',
  productSpecialMarking: [],
  productSeasonCode: 'ÞORRI',
  minimumQuantity: 0,
  useMinimumQuantityAsUnit: false,
  isSpecialOrderAndOutOfStock: false,
  productSearchGrape: '',
  productProducer: 'Einfalt ehf.',
  productShortDescription: 'Ölverk Sóði Þorrabjór',
  productBackupInventory: 0,
  productPackagingWeight: 6.68,
  productCarbonFootprint: 31.93,
  supplierId: null,
  productAvailableUnits: '24',
  productSaleStatus: '-2',
  productImageUrl: 'https://www.vinbudin.is/Portaldata/1/Resources/vorumyndir/original/28304_r.jpg'
}

[!NOTE] This package is designed to be used in a server-side environment. Due to restrictions imposed by browsers regarding cross-origin requests (CORS), attempting to use this package in a client-side (browser) environment may result in errors related to CORS policies.

Methods

getProducts(products) -> promise

Gets products from www.vinbudin.is

  • products (Object) is an options object that you can optionally pass in if you want some subset of the data.

It looks like this:

{
  beer: true,
  red: true,
  white: true,
  rose: true,
  bubbly: true,
  fortified: true,
  ciderfruitandblends: true,
  sakeandmead: true,
  strong: true,
  aromatised: true,
}

Working with client-side environments

While this package is intended for use in server-side environments, such as Node.js applications, there are workarounds available for integrating it into client-side environments.

Both Nuxt and Next.js support API routes as an example:

Example using Nuxt API routes

// server/api/vinbudin.ts
import { getProducts } from 'vinbudin'

export default defineEventHandler(async () => {
  return await getProducts({ beer: true })
)

// Component
<script setup lang="ts">
const { data } = await useFetch('/api/vinbudin')
</script>

Keywords

FAQs

Package last updated on 24 Feb 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc