interface-forge
Version:
A TypeScript library for creating strongly typed mock data factories using Faker.js for test data generation
126 lines • 3.43 kB
JSON
{
"name": "interface-forge",
"author": "Na'aman Hirschfeld",
"version": "2.4.1",
"license": "MIT",
"description": "A TypeScript library for creating strongly typed mock data factories using Faker.js for test data generation",
"keywords": [
"factory",
"testing",
"typescript",
"faker.js",
"faker",
"mock-data",
"test-data",
"fixtures",
"type-safe",
"mocking",
"zod",
"schema",
"validation"
],
"repository": {
"type": "git",
"url": "https://github.com/Goldziher/interface-forge"
},
"bugs": {
"url": "https://github.com/Goldziher/interface-forge/issues"
},
"homepage": "https://github.com/Goldziher/interface-forge#readme",
"files": [
"dist",
"examples",
"LICENSE",
"README.md"
],
"main": "dist/index.js",
"module": "dist/index.mjs",
"types": "dist/index.d.ts",
"exports": {
".": {
"types": "./dist/index.d.ts",
"import": "./dist/index.mjs",
"require": "./dist/index.js",
"default": "./dist/index.mjs"
},
"./zod": {
"types": "./dist/zod.d.ts",
"import": "./dist/zod.mjs",
"require": "./dist/zod.js",
"default": "./dist/zod.mjs"
}
},
"engines": {
"node": ">=16.0.0"
},
"sideEffects": false,
"devDependencies": {
"@commitlint/cli": "^19.8.1",
"@commitlint/config-conventional": "^19.8.1",
"@eslint/compat": "^1.3.0",
"@eslint/js": "^9.29.0",
"@prisma/client": "^6.9.0",
"@types/node": "^24.0.3",
"@vitest/coverage-v8": "^3.2.3",
"eslint": "^9.29.0",
"eslint-config-prettier": "^10.1.5",
"eslint-plugin-jsdoc": "^51.0.1",
"eslint-plugin-n": "17.20.0",
"eslint-plugin-perfectionist": "^4.14.0",
"eslint-plugin-promise": "7.2.1",
"eslint-plugin-unicorn": "59.0.1",
"eslint-plugin-unused-imports": "^4.1.4",
"eslint-plugin-vitest": "^0.5.4",
"expect-type": "^1.2.1",
"globals": "^16.2.0",
"http-server": "^14.1.1",
"husky": "^9.1.7",
"lint-staged": "^16.1.2",
"mongoose": "^8.16.0",
"prettier": "^3.5.3",
"type-fest": "^4.41.0",
"typedoc": "^0.28.5",
"typedoc-github-theme": "^0.3.0",
"typedoc-plugin-coverage": "^4.0.1",
"typedoc-plugin-markdown": "^4.6.4",
"typedoc-plugin-missing-exports": "^4.0.0",
"typescript": "^5.8.3",
"typescript-eslint": "^8.34.1",
"vite": "^6.3.5",
"vite-plugin-dts": "^4.5.4",
"vitest": "^3.2.3",
"zod": "^3.25.67"
},
"lint-staged": {
"*.{ts,d.ts,js,mjs,md,json,yaml,yml}": "prettier --write",
"*.{ts,mjs}": "eslint --fix"
},
"dependencies": {
"@faker-js/faker": "^9.8.0",
"@tool-belt/type-predicates": "^1.4.0",
"@vitest/coverage-v8": "^3.2.3",
"prettier-plugin-jsdoc": "^1.3.2",
"rimraf": "^6.0.1"
},
"peerDependencies": {
"zod": "^3.25.0"
},
"peerDependenciesMeta": {
"zod": {
"optional": true
}
},
"scripts": {
"build": "rimraf dist && vite build",
"clean": "rimraf dist",
"format": "prettier --write .",
"lint": "eslint --fix .",
"test": "vitest run",
"test:coverage": "vitest run --coverage",
"typecheck": "tsc --noEmit",
"gen:docs": "./node_modules/.bin/typedoc",
"gen:docs:markdown": "typedoc --options typedoc-markdown.json",
"gen:docs:all": "pnpm gen:docs && pnpm gen:docs:markdown",
"gen:docs:serve": "pnpm gen:docs && http-server docs -p 8081 -o -c-1"
}
}