@decaf-ts/as-zod 1.4.0 → 1.4.2
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/README.md +5 -0
- package/dist/as-zod.cjs.map +1 -1
- package/dist/as-zod.js +1 -1
- package/dist/as-zod.js.map +1 -1
- package/lib/esm/index.d.ts +1 -1
- package/lib/esm/index.js +1 -1
- package/lib/index.cjs +1 -1
- package/lib/index.d.ts +1 -1
- package/package.json +14 -8
- package/workdocs/assets/slogans.json +194 -0
package/README.md
CHANGED
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
|
|
5
5
|
Small addon to enable two-way convertion between Models and Zod
|
|
6
6
|
|
|
7
|
+
> Release docs refreshed on 2025-11-26. See [workdocs/reports/RELEASE_NOTES.md](./workdocs/reports/RELEASE_NOTES.md) for ticket summaries.
|
|
8
|
+
|
|
7
9
|

|
|
8
10
|

|
|
9
11
|

|
|
@@ -61,6 +63,9 @@ versions `^0.0.1` are for zod 3.x. `^1.0.0` for zod 4.x
|
|
|
61
63
|
- builder;
|
|
62
64
|
- etc;
|
|
63
65
|
|
|
66
|
+
## Release Documentation Hooks
|
|
67
|
+
Stay aligned with the automated release pipeline by reviewing [Release Notes](./workdocs/reports/RELEASE_NOTES.md) and [Dependencies](./workdocs/reports/DEPENDENCIES.md) after trying these recipes (updated on 2025-11-26).
|
|
68
|
+
|
|
64
69
|
|
|
65
70
|
### Related
|
|
66
71
|
|
package/dist/as-zod.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"as-zod.cjs","sources":["../src/overrides.ts","../src/index.ts"],"sourcesContent":[null,null],"names":["ReservedKeys","ValidationKeys","REQUIRED","TYPE","DATE","ModelKeys","ZodAttributeBuilder","AttributeBuilder","constructor","parent","attr","declaredType","decoratorData","description","super","this","attributeDescription","safeInvoke","value","prototype","typeName","name","toString","String","normalizeTypes","input","Array","isArray","map","entry","resolved","resolveListTypes","listMeta","clazz","buildSchema","Object","keys","length","typeData","Error","zodSchema","zodify","customTypes","LIST","ZodAny","key","props","entries","filter","k","el","includes","zodifyValidation","optional","describe","ZodModelBuilder","ModelBuilder","target","metadata","decoratorDataFor","prop","validation","designType","properties","undefined","message","DEFAULT_ERROR_MESSAGES","toZodObject","result","Model","getAttributes","startsWith","schema","Metadata","class","objectSchema","z","object","type","zz","innerZodify","toLowerCase","Primitives","STRING","string","NUMBER","number","BIGINT","bigint","BOOLEAN","boolean","date","array","Set","setSchema","set","valueSchema","defineProperty","get","_def","valueType","enumerable","configurable","m","from","e","zod","t","or","values","MIN","min","MIN_LENGTH","MAX","max","MAX_LENGTH","STEP","multipleOf","PATTERN","URL","EMAIL","PASSWORD","regex","RegExp","TypeError","modelToZod","model","ctor","fullMeta","descriptor","getOwnPropertyDescriptor","VERSION","registerLibrary"],"mappings":"gDAsBA,MAAMA,EAAe,CACnBC,EAAAA,eAAeC,SACfD,EAAAA,eAAeE,KACfF,EAAAA,eAAeG,KACfC,EAAAA,UAAUF,MASZ,MAAMG,UAGIC,EAAAA,iBAIR,WAAAC,CACEC,EACAC,EACAC,EACAC,EACAC,GAEAC,MAAML,EAAQC,EAAMC,GACpBI,KAAKH,cAAgBA,EACrBG,KAAKC,qBAAuBH,
|
|
1
|
+
{"version":3,"file":"as-zod.cjs","sources":["../src/overrides.ts","../src/index.ts"],"sourcesContent":[null,null],"names":["ReservedKeys","ValidationKeys","REQUIRED","TYPE","DATE","ModelKeys","ZodAttributeBuilder","AttributeBuilder","constructor","parent","attr","declaredType","decoratorData","description","super","this","attributeDescription","safeInvoke","value","prototype","typeName","name","toString","String","normalizeTypes","input","Array","isArray","map","entry","resolved","resolveListTypes","listMeta","clazz","buildSchema","Object","keys","length","typeData","Error","zodSchema","zodify","customTypes","LIST","ZodAny","key","props","entries","filter","k","el","includes","zodifyValidation","optional","describe","ZodModelBuilder","ModelBuilder","target","metadata","decoratorDataFor","prop","validation","designType","properties","undefined","message","DEFAULT_ERROR_MESSAGES","toZodObject","result","Model","getAttributes","startsWith","schema","Metadata","class","objectSchema","z","object","type","zz","innerZodify","toLowerCase","Primitives","STRING","string","NUMBER","number","BIGINT","bigint","BOOLEAN","boolean","date","array","Set","setSchema","set","valueSchema","defineProperty","get","_def","valueType","enumerable","configurable","m","from","e","zod","t","or","values","MIN","min","MIN_LENGTH","MAX","max","MAX_LENGTH","STEP","multipleOf","PATTERN","URL","EMAIL","PASSWORD","regex","RegExp","TypeError","modelToZod","model","ctor","fullMeta","descriptor","getOwnPropertyDescriptor","VERSION","registerLibrary"],"mappings":"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"}
|
package/dist/as-zod.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Metadata as t}from"@decaf-ts/decoration";import{ValidationKeys as e,ModelKeys as r,Model as o,ModelBuilder as a,DEFAULT_ERROR_MESSAGES as n,
|
|
1
|
+
import{Metadata as t}from"@decaf-ts/decoration";import{ValidationKeys as e,ModelKeys as r,Model as o,ModelBuilder as a,DEFAULT_ERROR_MESSAGES as n,AttributeBuilder as s,Primitives as i}from"@decaf-ts/decorator-validation";import{z as c,ZodAny as u}from"zod";const f=[e.REQUIRED,e.TYPE,e.DATE,r.TYPE];class p extends s{constructor(t,e,r,o,a){super(t,e,r),this.decoratorData=o,this.attributeDescription=a}safeInvoke(t){if("function"!=typeof t)return t;if(t.prototype)return t;try{return t()}catch{return t}}typeName(t){if("string"==typeof t)return t;if("function"==typeof t)return t.name||t.toString();if(t&&"object"==typeof t&&"name"in t){const e=t.name;if(e)return e}return t+""}normalizeTypes(t){return(Array.isArray(t)?t:[t]).map(t=>{const e=this.safeInvoke(t);return this.typeName(e)})}resolveListTypes(t){return(Array.isArray(t.clazz)?t.clazz:[t.clazz]).map(t=>{const e=this.safeInvoke(t);return this.typeName(e)})}buildSchema(){if(!Object.keys(this.decoratorData).length)return;const t=this.decoratorData[e.TYPE];if(!t)throw Error("Missing type information");let r=h(this.normalizeTypes(t.customTypes),this.decoratorData[e.LIST]?h(this.resolveListTypes(this.decoratorData[e.LIST])):u);for(const[t,e]of Object.entries(this.decoratorData).filter(([t])=>{return e=t,!f.includes(e);var e}))r=m(r,t,e);return this.decoratorData[e.REQUIRED]||(r=r.optional()),this.attributeDescription&&(r=r.describe(this.attributeDescription)),r}}class d extends a{constructor(t,e){super(),this.target=t,this.metadata=e}decoratorDataFor(t){const r={...(this.metadata.validation??{})[t]??{}};if(!r[e.TYPE]){const o=this.metadata.properties?.[t],a="function"==typeof o||"string"==typeof o?.name?o.name:void 0;a&&(r[e.TYPE]={customTypes:[a],message:n.TYPE,description:"defines the accepted types for the attribute"})}return r}toZodObject(){const e={},r=o.getAttributes(this.target);if(Array.isArray(r)&&r.length)for(const o of r){if("string"!=typeof o||"constructor"===o||o.startsWith("_"))continue;if("function"==typeof this.target[o])continue;const r=this.decoratorDataFor(o);if(!Object.keys(r).length)continue;const a=new p(this,o,this.metadata.properties?.[o],r,t.description(this.target,o)??this.metadata.description?.[o]).buildSchema();a&&(e[o]=a)}const a=t.description(this.target)??this.metadata.description?.class,n=c.object(e);return a?n.describe(a):n}}function h(t,r=u){function a(t){switch(t.toLowerCase()){case i.STRING:return c.string();case i.NUMBER:return c.number();case i.BIGINT:return c.bigint();case i.BOOLEAN:return c.boolean();case e.DATE:return c.date();case Array.name.toLowerCase():return c.array(r);case Set.name.toLowerCase():{const t=c.set(r);return void 0===t.valueSchema&&Object.defineProperty(t,"valueSchema",{get:()=>t._def?.valueType,enumerable:!1,configurable:!0}),t}default:{const e=o.get(t);if(!e)throw Error("Unzodifiable type: "+t);try{return c.from(e)}catch(e){throw Error(`Failed to zodify model ${t}: ${e}`)}}}}let n;t="string"==typeof t?[t]:t;for(const e of t)n=n?n.or(a(e)):a(e);return n}function m(t,r,o){switch(r){case e.MIN:return t.min(o[e.MIN]);case e.MIN_LENGTH:return t.min(o[e.MIN_LENGTH]);case e.MAX:return t.max(o[e.MAX]);case e.MAX_LENGTH:return t.max(o[e.MAX_LENGTH]);case e.STEP:return t.multipleOf(o[e.STEP]);case e.PATTERN:case e.URL:case e.EMAIL:case e.PASSWORD:return t.regex(RegExp(o[e.PATTERN],"g"));case e.DATE:throw new TypeError("DATE validator cannot be applied as a refinement");default:return t}}function y(e){const r=e instanceof o?e.constructor:e,a=t.get(r);return new d(r,a??{validation:{},properties:{},description:{}}).toZodObject()}const l=Object.getOwnPropertyDescriptor(c,"from");l&&!l.configurable||Object.defineProperty(c,"from",{value:t=>y(t)});const T="##VERSION##";t.registerLibrary("@decaf-ts/as-zod",T);export{T as VERSION,y as modelToZod,h as zodify,m as zodifyValidation};
|
|
2
2
|
//# sourceMappingURL=as-zod.js.map
|
package/dist/as-zod.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"as-zod.js","sources":["../src/overrides.ts","../src/index.ts"],"sourcesContent":[null,null],"names":["ReservedKeys","ValidationKeys","REQUIRED","TYPE","DATE","ModelKeys","ZodAttributeBuilder","AttributeBuilder","constructor","parent","attr","declaredType","decoratorData","description","super","this","attributeDescription","safeInvoke","value","prototype","typeName","name","toString","String","normalizeTypes","input","Array","isArray","map","entry","resolved","resolveListTypes","listMeta","clazz","buildSchema","Object","keys","length","typeData","Error","zodSchema","zodify","customTypes","LIST","ZodAny","key","props","entries","filter","k","el","includes","zodifyValidation","optional","describe","ZodModelBuilder","ModelBuilder","target","metadata","decoratorDataFor","prop","validation","designType","properties","undefined","message","DEFAULT_ERROR_MESSAGES","toZodObject","result","Model","getAttributes","startsWith","schema","Metadata","class","objectSchema","z","object","type","zz","innerZodify","toLowerCase","Primitives","STRING","string","NUMBER","number","BIGINT","bigint","BOOLEAN","boolean","date","array","Set","setSchema","set","valueSchema","defineProperty","get","_def","valueType","enumerable","configurable","m","from","e","zod","t","or","values","MIN","min","MIN_LENGTH","MAX","max","MAX_LENGTH","STEP","multipleOf","PATTERN","URL","EMAIL","PASSWORD","regex","RegExp","TypeError","modelToZod","model","ctor","fullMeta","descriptor","getOwnPropertyDescriptor","VERSION","registerLibrary"],"mappings":"kQAsBA,MAAMA,EAAe,CACnBC,EAAeC,SACfD,EAAeE,KACfF,EAAeG,KACfC,EAAUF,MASZ,MAAMG,UAGIC,EAIR,WAAAC,CACEC,EACAC,EACAC,EACAC,EACAC,GAEAC,MAAML,EAAQC,EAAMC,GACpBI,KAAKH,cAAgBA,EACrBG,KAAKC,qBAAuBH,
|
|
1
|
+
{"version":3,"file":"as-zod.js","sources":["../src/overrides.ts","../src/index.ts"],"sourcesContent":[null,null],"names":["ReservedKeys","ValidationKeys","REQUIRED","TYPE","DATE","ModelKeys","ZodAttributeBuilder","AttributeBuilder","constructor","parent","attr","declaredType","decoratorData","description","super","this","attributeDescription","safeInvoke","value","prototype","typeName","name","toString","String","normalizeTypes","input","Array","isArray","map","entry","resolved","resolveListTypes","listMeta","clazz","buildSchema","Object","keys","length","typeData","Error","zodSchema","zodify","customTypes","LIST","ZodAny","key","props","entries","filter","k","el","includes","zodifyValidation","optional","describe","ZodModelBuilder","ModelBuilder","target","metadata","decoratorDataFor","prop","validation","designType","properties","undefined","message","DEFAULT_ERROR_MESSAGES","toZodObject","result","Model","getAttributes","startsWith","schema","Metadata","class","objectSchema","z","object","type","zz","innerZodify","toLowerCase","Primitives","STRING","string","NUMBER","number","BIGINT","bigint","BOOLEAN","boolean","date","array","Set","setSchema","set","valueSchema","defineProperty","get","_def","valueType","enumerable","configurable","m","from","e","zod","t","or","values","MIN","min","MIN_LENGTH","MAX","max","MAX_LENGTH","STEP","multipleOf","PATTERN","URL","EMAIL","PASSWORD","regex","RegExp","TypeError","modelToZod","model","ctor","fullMeta","descriptor","getOwnPropertyDescriptor","VERSION","registerLibrary"],"mappings":"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"}
|
package/lib/esm/index.d.ts
CHANGED
package/lib/esm/index.js
CHANGED
package/lib/index.cjs
CHANGED
|
@@ -24,6 +24,6 @@ __exportStar(require("./overrides.cjs"), exports);
|
|
|
24
24
|
* @const VERSION
|
|
25
25
|
* @memberOf module:as-zod
|
|
26
26
|
*/
|
|
27
|
-
exports.VERSION = "1.
|
|
27
|
+
exports.VERSION = "1.4.1";
|
|
28
28
|
decoration_1.Metadata.registerLibrary("@decaf-ts/as-zod", exports.VERSION);
|
|
29
29
|
//# sourceMappingURL=index.js.map
|
package/lib/index.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@decaf-ts/as-zod",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.2",
|
|
4
4
|
"description": "Zod compatibility library",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -19,11 +19,11 @@
|
|
|
19
19
|
"build": "npx build-scripts --dev",
|
|
20
20
|
"build:prod": "npx build-scripts --prod",
|
|
21
21
|
"test": "jest --runInBand --detectOpenHandles",
|
|
22
|
-
"test:unit": "jest --
|
|
23
|
-
"test:integration": "jest --
|
|
24
|
-
"test:all": "jest --
|
|
22
|
+
"test:unit": "jest --testPathPatterns=\"/tests/unit\" --passWithNoTests --detectOpenHandles",
|
|
23
|
+
"test:integration": "jest --testPathPatterns=\"/tests/(integration)\" --passWithNoTests --detectOpenHandles",
|
|
24
|
+
"test:all": "jest --testPathPatterns=\"/tests\" --passWithNoTests --detectOpenHandles",
|
|
25
25
|
"test:circular": "dpdm -T --no-warning --no-tree ./src/index.ts",
|
|
26
|
-
"coverage": "rimraf ./workdocs/reports/data/*.json && npm run test:all -- --coverage --config=./workdocs/reports/jest.coverage.config.
|
|
26
|
+
"coverage": "rimraf ./workdocs/reports/data/*.json && npm run test:all -- --coverage --config=./workdocs/reports/jest.coverage.config.cjs",
|
|
27
27
|
"lint": "eslint .",
|
|
28
28
|
"lint-fix": "eslint --fix .",
|
|
29
29
|
"prepare-pr": "npm run lint-fix && npm run build:prod && npm run coverage && npm run docs",
|
|
@@ -57,7 +57,8 @@
|
|
|
57
57
|
},
|
|
58
58
|
"files": [
|
|
59
59
|
"lib",
|
|
60
|
-
"dist"
|
|
60
|
+
"dist",
|
|
61
|
+
"workdocs/assets/slogans.json"
|
|
61
62
|
],
|
|
62
63
|
"keywords": [
|
|
63
64
|
"zod",
|
|
@@ -77,7 +78,8 @@
|
|
|
77
78
|
},
|
|
78
79
|
"homepage": "https://github.com/decaf-ts/ts-workspace#readme",
|
|
79
80
|
"devDependencies": {
|
|
80
|
-
"@decaf-ts/utils": "latest"
|
|
81
|
+
"@decaf-ts/utils": "latest",
|
|
82
|
+
"@types/jest": "^30.0.0"
|
|
81
83
|
},
|
|
82
84
|
"peerDependencies": {
|
|
83
85
|
"@decaf-ts/decoration": "latest",
|
|
@@ -85,5 +87,9 @@
|
|
|
85
87
|
"@decaf-ts/reflection": "latest",
|
|
86
88
|
"zod": "^4.1.12"
|
|
87
89
|
},
|
|
88
|
-
"license": "MIT"
|
|
90
|
+
"license": "MIT",
|
|
91
|
+
"overrides": {
|
|
92
|
+
"minimatch": "^10.2.2",
|
|
93
|
+
"test-exclude": "7.0.1"
|
|
94
|
+
}
|
|
89
95
|
}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"Slogan": "as-zod: Turn your models into schemas without turning your code into chaos.",
|
|
4
|
+
"Tags": "Zod, Validation, Calm"
|
|
5
|
+
},
|
|
6
|
+
{
|
|
7
|
+
"Slogan": "Bridge your data types to runtime safety — decaf style.",
|
|
8
|
+
"Tags": "Zod, TypeSafety, Coffee-themed"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"Slogan": "Your TypeScript types deserve more than caffeine-fuelled runtime surprises.",
|
|
12
|
+
"Tags": "Typescript, Zod, Humor"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"Slogan": "From model to schema in one smooth sip.",
|
|
16
|
+
"Tags": "Zod, Workflow, Coffee-themed"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"Slogan": "Validate with confidence. Relaxed heart-rate included.",
|
|
20
|
+
"Tags": "Validation, Calm, Developer"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"Slogan": "as-zod: Because your code should parse data, not your blood pressure.",
|
|
24
|
+
"Tags": "Zod, Humor, Calm"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"Slogan": "Schema generation + type inference = less caffeine, more clarity.",
|
|
28
|
+
"Tags": "Inference, Zod, Coffee-themed"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"Slogan": "Make invalid data walk the plank while you sip decaf.",
|
|
32
|
+
"Tags": "Validation, Fun, Coffee-themed"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"Slogan": "From safeParse to sleep at night.",
|
|
36
|
+
"Tags": "Zod, Relaxation, Developer"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"Slogan": "as-zod: your model’s barista for brewing schema definitions.",
|
|
40
|
+
"Tags": "Zod, Metaphor, Coffee-themed"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"Slogan": "as-zod: now with 30% more chill and 70% fewer bugs.",
|
|
44
|
+
"Tags": "Validation, Calm, Humor"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"Slogan": "Zod schemas so smooth, they autocorrect your stress.",
|
|
48
|
+
"Tags": "Zod, Developer, Fun"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"Slogan": "Runtime validation that won't trigger your fight-or-flight.",
|
|
52
|
+
"Tags": "Zod, Calm, Developer"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"Slogan": "Code serenity now. Errors later. Maybe.",
|
|
56
|
+
"Tags": "Zod, Humor, DevX"
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"Slogan": "Zod your types without sacrificing your sanity.",
|
|
60
|
+
"Tags": "TypeSafety, Developer, Chill"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"Slogan": "From TS model to runtime zen.",
|
|
64
|
+
"Tags": "Calm, Zod, Workflow"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"Slogan": "Decaf the validation process.",
|
|
68
|
+
"Tags": "Coffee-themed, Developer, Chill"
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"Slogan": "Less runtime panic. More compile-time tea time.",
|
|
72
|
+
"Tags": "TypeScript, Humor, Calm"
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"Slogan": "Safely parse like a sleepy ninja.",
|
|
76
|
+
"Tags": "Zod, Fun, Developer"
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"Slogan": "Parse responsibly. Type enthusiastically.",
|
|
80
|
+
"Tags": "Validation, Types, Humor"
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
"Slogan": "Zod schemas that don’t need a therapist afterward.",
|
|
84
|
+
"Tags": "Zod, Developer, Humor"
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"Slogan": "Coffee in the mug. Types in the schema. Zen in the soul.",
|
|
88
|
+
"Tags": "Coffee-themed, Zod, Calm"
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"Slogan": "Schema validation without heart palpitations.",
|
|
92
|
+
"Tags": "Validation, Calm, Tech"
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"Slogan": "Your runtime checks deserve spa day energy.",
|
|
96
|
+
"Tags": "Zod, Humor, Developer"
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
"Slogan": "Skip the caffeine jitters. Keep the type safety.",
|
|
100
|
+
"Tags": "Zod, TypeSafety, Coffee-themed"
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"Slogan": "Infer types like a boss. Validate like a monk.",
|
|
104
|
+
"Tags": "Developer, Zod, Humor"
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
"Slogan": "Zod-powered. Jitter-free.",
|
|
108
|
+
"Tags": "Coffee-themed, Zod, Fun"
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
"Slogan": "as-zod: because schemas don’t need to scream.",
|
|
112
|
+
"Tags": "Validation, Calm, Humor"
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"Slogan": "Type-safe and coffee-safe.",
|
|
116
|
+
"Tags": "Zod, Coffee-themed, Developer"
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"Slogan": "Errors handled with a gentle sigh.",
|
|
120
|
+
"Tags": "Calm, Developer, Zod"
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"Slogan": "Chill out. Your data’s valid.",
|
|
124
|
+
"Tags": "Validation, Humor, Coffee-themed"
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"Slogan": "Don't just type. Decaf-type.",
|
|
128
|
+
"Tags": "Typescript, Calm, Humor"
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
"Slogan": "Types. Schemas. Less drama.",
|
|
132
|
+
"Tags": "Zod, TypeSafety, Calm"
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"Slogan": "Infer everything. Panic about nothing.",
|
|
136
|
+
"Tags": "Inference, Calm, Developer"
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
"Slogan": "Zod with the calmness of a sleeping golden retriever.",
|
|
140
|
+
"Tags": "Zod, Humor, Developer"
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
"Slogan": "Because a failed parse shouldn’t ruin your lunch.",
|
|
144
|
+
"Tags": "Validation, Humor, Zod"
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"Slogan": "Catch bad data. Release good vibes.",
|
|
148
|
+
"Tags": "Validation, Chill, Developer"
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
"Slogan": "Write once, validate forever.",
|
|
152
|
+
"Tags": "Developer, Zod, Coffee-themed"
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
"Slogan": "Schemas that let you sleep better at night.",
|
|
156
|
+
"Tags": "Validation, Calm, Sleep"
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
"Slogan": "From unparsed to unperturbed.",
|
|
160
|
+
"Tags": "Zod, Calm, Developer"
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
"Slogan": "Compile-time cuddles, runtime hugs.",
|
|
164
|
+
"Tags": "Types, Humor, Developer"
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
"Slogan": "Get your schema straight — no coffee required.",
|
|
168
|
+
"Tags": "Zod, Coffee-themed, Humor"
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
"Slogan": "Keep calm and infer on.",
|
|
172
|
+
"Tags": "Inference, Calm, Humor"
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
"Slogan": "as-zod: For devs who love types and loathe chaos.",
|
|
176
|
+
"Tags": "Zod, Calm, TypeSafety"
|
|
177
|
+
},
|
|
178
|
+
{
|
|
179
|
+
"Slogan": "Take a breath. Now validate.",
|
|
180
|
+
"Tags": "Developer, Calm, Validation"
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
"Slogan": "Zodify like it's a lazy Sunday.",
|
|
184
|
+
"Tags": "Zod, Chill, Fun"
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"Slogan": "Let your schemas meditate.",
|
|
188
|
+
"Tags": "Calm, Decorators, Validation"
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
"Slogan": "A fresh pot of types, every parse.",
|
|
192
|
+
"Tags": "Coffee-themed, Zod, Developer"
|
|
193
|
+
}
|
|
194
|
+
]
|