Utilities
paper-weight-convert
Convert paper weight between GSM (metric), US basis weight in pounds (bond, offset, book, text, cover, bristol, index, tag, newsprint), and ounces per square yard. Deterministic, offline, zero cost. Handles the US-basis-weight trap where 20 lb bond is not the same paper as 20 lb cover.
Install
openclaw plugins install @worldpaperindex/openclaw-paper-weight
Configuration Example
{
"plugins": {
"entries": {
"paper-weight-convert": {
"enabled": true
}
}
}
}
README
# Paper Weight Converter
An OpenClaw plugin that converts paper weight between GSM (metric), US basis weight in pounds (all standard paper classes), and ounces per square yard.
One deterministic tool. No network. No API key. Zero runtime cost.
## Why this exists
Paper is priced in different units around the world:
- Europe, Asia, Latin America: **GSM** (grams per square meter)
- United States: **basis weight in pounds** (different basis sizes per paper class: 20 lb bond is not the same as 20 lb cover)
- Some specialty and industrial paper: **ounces per square yard**
Converting between these trips up procurement teams constantly because US basis weight depends on which paper class you are buying. This plugin gets it right.
## Tool
`paper_weight_convert({ value, from, to, basis? })`
Supported units: `gsm`, `lb`, `oz_sq_yd`.
Supported `basis` values for US pound conversions:
| Basis | Basis size (inches) | Example (20 lb) |
|---|---|---|
| bond | 17 x 22 | 20 lb bond = 75.2 gsm |
| offset (book, text) | 25 x 38 | 50 lb offset = 74.0 gsm |
| cover | 20 x 26 | 80 lb cover = 216.4 gsm |
| bristol | 22.5 x 28.5 | 100 lb bristol = 219.3 gsm |
| index | 25.5 x 30.5 | 110 lb index = 198.9 gsm |
| tag, newsprint | 24 x 36 | 90 lb tag = 146.5 gsm |
Omit `basis` and `bond` is used as the default.
## Install
```bash
openclaw plugins install @worldpaperindex/openclaw-paper-weight
```
## Examples
"Convert 80 gsm to US bond pounds" -> `{ value: 80, from: "gsm", to: "lb", basis: "bond" }` -> `21.3 lb bond`.
"What is 100 lb cover in metric?" -> `{ value: 100, from: "lb", to: "gsm", basis: "cover" }` -> `270.5 gsm`.
## Develop
```bash
npm install
npm run typecheck
npm test
npm run build
```
## License
MIT. See [LICENSE](./LICENSE).
Paper grade data and mill directory at [worldpaperindex.com](https://worldpaperindex.com).
paper
gsm
basis-weight
conversion
utilities
worldpaperindex
procurement
Comments
Sign in to leave a comment