Catalog npm
Back to packageRELEASE DETAILS

2.1.0

npm

2021-beer-styles

DEPRECATED — renamed to 'beer-styles' (use 'beer-styles/2021' for identical data). Beer styles in JSON format based on the 2021 BJCP style guidelines, with TypeScript types.

2021beerbeer-stylesbjcpbrewinghomebrewjsonstyle-guidelinestypescriptboilerplate
Published7 Sept 2026
Direct dependencies6
Transitive dependenciesNot calculated

README

Current package documentation

2021-beer-styles

⚠️ This package has moved. 2021-beer-styles has been renamed to beer-styles and will not receive further updates. Install beer-styles and import from beer-styles/2021 for identical data.

- npm install 2021-beer-styles
+ npm install beer-styles
- import { beerStyles } from '2021-beer-styles';
+ import { beerStyles } from 'beer-styles/2021';

beer-styles versions its data by year: the bare beer-styles import tracks the latest guidelines, and beer-styles/2021 stays pinned to this data.

Beer styles in JSON format based on the 2021 BJCP style guidelines, published with TypeScript types.

Install

npm install 2021-beer-styles

Ships ESM and CommonJS builds plus type declarations. Node.js >= 18.

Usage

import { beerStyles } from '2021-beer-styles';
// or: import beerStyles from '2021-beer-styles';

beerStyles[0].title; // "1. Standard American Beer"
beerStyles[0].styles[0].title; // "1A. American Light Lager"

CommonJS:

const { beerStyles } = require('2021-beer-styles');

Types:

import type { BeerStyles, BeerCategory, BeerStyle, VitalStatistics } from '2021-beer-styles';

Raw JSON (no JS wrapper), via the subpath export:

import styles from '2021-beer-styles/styles.json' with { type: 'json' };

Data shape

beerStyles is a BeerCategory[]. Each category has a title, a description, and a list of styles; each style has a title, an optional description, and a properties object (overallImpression, aroma, vitalStatistics, tags, …). See src/types.ts for the full contract.

Notes

  • Some styles are not 100% faithful to the BJCP guidelines — the data was converted from the source .docx with a parsing script.
  • 25B. Saison has an extra properties.specialStatistics field. The BJCP defines it as a table of strength variants (table / standard / super); vitalStatistics holds the combined range and specialStatistics holds the per-variant numbers.

Contributing

Fixes to style content and types are welcome — open an issue or PR.

npm install      # also runs the build via the prepare script
npm run build    # bundle src/ -> dist/ with tsup (ESM + CJS + d.ts)
npm test         # tsc --noEmit: also checks src/styles.json against the types
npm run lint
npm run format

The data lives in src/styles.json (the single source of truth). src/index.ts imports it, applies the types, and re-exports.

License

MIT

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Declared dependencies 6

Native requirements
6 direct targetsNot calculated transitive count
Package / targetRequirementRelationship
tsup
Environment
{
  "local_name": "tsup",
  "alias": false,
  "peer_metadata": null
}
^8.0.0development
eslint
Environment
{
  "local_name": "eslint",
  "alias": false,
  "peer_metadata": null
}
^9.0.0development
prettier
Environment
{
  "local_name": "prettier",
  "alias": false,
  "peer_metadata": null
}
^3.3.0development
@eslint/js
Environment
{
  "local_name": "@eslint/js",
  "alias": false,
  "peer_metadata": null
}
^9.0.0development
typescript
Environment
{
  "local_name": "typescript",
  "alias": false,
  "peer_metadata": null
}
^5.5.0development
typescript-eslint
Environment
{
  "local_name": "typescript-eslint",
  "alias": false,
  "peer_metadata": null
}
^8.0.0development

Distribution files

1 collected
Distribution 1

Source distribution

Source file
Checksums from source
{
  "shasum": "483fce7381634440aa94787af5e61b1fd63c7b92",
  "tarball": "https://registry.npmjs.org/2021-beer-styles/-/2021-beer-styles-2.1.0.tgz",
  "fileCount": 8,
  "integrity": "sha512-/jRX/vblaDuY1zJkGUJcp5wScDDL/qcHX8oEwVMODA6MSgApOTPU6RHEZxyGck0+43fNo8b1fWhzqNm1YDLNSA==",
  "signatures": [
    {
      "sig": "MEYCIQC2Eoe/A7SCT+/sNMGKZRPmelzf5le6mmuZZYc6Pdz5AwIhAIlekN7ubdyahVIvH1OfTvtny6UKrgvrud+zkZoNPUjJ",
      "keyid": "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"
    },
    {
      "keyid": "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U",
      "sig": "MEUCIQDKhfHqpu5ci3LY3Taoi0XWuJITD9eT01C/F1M0EpFv8QIgcT2jFSsikL9NsJHE3jhx4YgCwAsY0tcpTfYtX2+Ls90="
    }
  ],
  "attestations": {
    "url": "https://registry.npmjs.org/-/npm/v1/attestations/2021-beer-styles@2.1.0",
    "provenance": {
      "predicateType": "https://slsa.dev/provenance/v1"
    }
  },
  "unpackedSize": 1394230
}

Repository

PENDING
jrdn91/bjcp-guidelines-2021

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 18:53 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package_version:4e621265e84148ebd3306149d0cb0b08058dbf4eda23c77ab8810912bf13cc5c

Other collected versions

1.0.314 Aug1.0.214 Aug1.0.114 Aug1.0.05 AugView all collected versions →