Catalog npm
PACKAGE EXPLORERView in registry

2021-beer-styles

npm

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
Versions collected5
Direct dependencies6From release 2.1.0
Last observed20 Oct, 18:53 UTC

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.

Versions 5

Collected releases
VersionPublishedDirect dependenciesOpen version
2.1.0Registry latest7 Sept 20266
1.0.314 Aug 20227
1.0.214 Aug 20227
1.0.114 Aug 20227
1.0.05 Aug 20227

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

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:669029550a6f99ed22eb03c0c2ee6e7801c5e4ca4f9d19c74ec2ed35db8dfd86