@instruments/sustainability 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +7 -0
- package/README.md +56 -0
- package/dist/index.d.ts +883 -0
- package/dist/index.js +6816 -0
- package/dist/index.js.map +1 -0
- package/package.json +42 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
Copyright © 2026 Material Technologies, LLC. All rights reserved.
|
|
2
|
+
|
|
3
|
+
This software and associated documentation files are the proprietary
|
|
4
|
+
property of Material Technologies, LLC. No license, express or implied,
|
|
5
|
+
is granted to use, copy, modify, merge, publish, distribute, sublicense,
|
|
6
|
+
or sell copies of this software except under a separate written
|
|
7
|
+
agreement with Material Technologies, LLC.
|
package/README.md
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# @instruments/sustainability
|
|
2
|
+
|
|
3
|
+
A canonical taxonomy for building-material sustainability claims. It ships the
|
|
4
|
+
reference vocabulary and a deterministic classifier that turns messy
|
|
5
|
+
manufacturer language ("GREENGUARD Gold", "PFAS free", "LEED Compliant") into
|
|
6
|
+
stable canonical ids, together with the evidence each claim actually requires.
|
|
7
|
+
|
|
8
|
+
The package is pure and dependency-light (only `zod`). It carries:
|
|
9
|
+
|
|
10
|
+
- **Frameworks** — building-rating and material-health programmes (LEED, WELL,
|
|
11
|
+
BREEAM, Living Building Challenge, …) with versioned rule references.
|
|
12
|
+
- **Claim families** — the canonical claims a product can make, each with its
|
|
13
|
+
evidence `sourceRequirements`, `frameworkMappings`, and a greenwashing-risk
|
|
14
|
+
rating.
|
|
15
|
+
- **Source types** — the evidence instruments (EPDs, HPDs, Declare labels,
|
|
16
|
+
emissions certificates, …) that can substantiate a claim.
|
|
17
|
+
- **A deterministic classifier** — alias-based matching from raw text to
|
|
18
|
+
canonical claim families, with no model calls and no guessing.
|
|
19
|
+
- **A greenwash lens and decision contexts** — plain-language interpretation of
|
|
20
|
+
what a claim does and does not prove.
|
|
21
|
+
|
|
22
|
+
## Install
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
pnpm add @instruments/sustainability
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Usage
|
|
29
|
+
|
|
30
|
+
### Classify raw claims
|
|
31
|
+
|
|
32
|
+
```ts
|
|
33
|
+
import { classifyClaims } from "@instruments/sustainability";
|
|
34
|
+
|
|
35
|
+
const matches = classifyClaims("GREENGUARD Gold | PFAS free | LEED Compliant");
|
|
36
|
+
|
|
37
|
+
for (const match of matches) {
|
|
38
|
+
console.log(match.claimFamilyId, match.greenwashingRisk);
|
|
39
|
+
// has_greenguard_gold_certification low
|
|
40
|
+
// claims_pfas_free high
|
|
41
|
+
// rating_system_leed_contribution_hint medium
|
|
42
|
+
}
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### Look up a claim family and its evidence requirements
|
|
46
|
+
|
|
47
|
+
```ts
|
|
48
|
+
import { getClaimFamily, getSourceRequirements } from "@instruments/sustainability";
|
|
49
|
+
|
|
50
|
+
const family = getClaimFamily("has_environmental_product_declaration");
|
|
51
|
+
console.log(family.canonicalName); // "Has an Environmental Product Declaration"
|
|
52
|
+
|
|
53
|
+
const requirements = getSourceRequirements("has_environmental_product_declaration");
|
|
54
|
+
console.log(requirements[0]?.requiredFields);
|
|
55
|
+
// ["program_operator", "product_category_rule", "declared_unit", ...]
|
|
56
|
+
```
|