mirror of
https://github.com/naturalcrit/homebrewery.git
synced 2025-12-25 09:42:40 +00:00
Possible to have babel automatically detect and import polyfills as needed, but Browserify just can't handle it. Manually importing the one troublesome one into the root of our project.
146 lines
5.2 KiB
JSON
146 lines
5.2 KiB
JSON
{
|
|
"name": "homebrewery",
|
|
"description": "Create authentic looking D&D homebrews using only markdown",
|
|
"version": "3.16.1",
|
|
"type": "module",
|
|
"engines": {
|
|
"npm": "^10.2.x",
|
|
"node": "^20.18.x"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git://github.com/naturalcrit/homebrewery.git"
|
|
},
|
|
"scripts": {
|
|
"dev": "node --experimental-require-module scripts/dev.js",
|
|
"quick": "node --experimental-require-module scripts/quick.js",
|
|
"build": "node --experimental-require-module scripts/buildHomebrew.js && node --experimental-require-module scripts/buildAdmin.js",
|
|
"builddev": "node --experimental-require-module scripts/buildHomebrew.js --dev",
|
|
"lint": "eslint --fix",
|
|
"lint:dry": "eslint",
|
|
"stylelint": "stylelint --fix **/*.{less}",
|
|
"stylelint:dry": "stylelint **/*.less",
|
|
"circleci": "npm test && eslint **/*.{js,jsx} --max-warnings=0",
|
|
"verify": "npm run lint && npm test",
|
|
"test": "jest --runInBand",
|
|
"test:api-unit": "jest \"server/.*.spec.js\" --verbose",
|
|
"test:api-unit:themes": "jest \"server/.*.spec.js\" -t \"theme bundle\" --verbose",
|
|
"test:api-unit:css": "jest \"server/.*.spec.js\" -t \"Get CSS\" --verbose",
|
|
"test:api-unit:notifications": "jest \"server/.*.spec.js\" -t \"Notifications\" --verbose",
|
|
"test:content-negotiation": "jest \"server/middleware/.*.spec.js\" --verbose",
|
|
"test:coverage": "jest --coverage --silent --runInBand",
|
|
"test:dev": "jest --verbose --watch",
|
|
"test:basic": "jest tests/markdown/basic.test.js --verbose",
|
|
"test:variables": "jest tests/markdown/variables.test.js --verbose",
|
|
"test:mustache-syntax": "jest \".*(mustache-syntax).*\" --verbose --noStackTrace",
|
|
"test:mustache-syntax:inline": "jest \".*(mustache-syntax).*\" -t '^Inline:.*' --verbose --noStackTrace",
|
|
"test:mustache-syntax:block": "jest \".*(mustache-syntax).*\" -t '^Block:.*' --verbose --noStackTrace",
|
|
"test:mustache-syntax:injection": "jest \".*(mustache-syntax).*\" -t '^Injection:.*' --verbose --noStackTrace",
|
|
"test:definition-lists": "jest tests/markdown/definition-lists.test.js --verbose --noStackTrace",
|
|
"test:hard-breaks": "jest tests/markdown/hard-breaks.test.js --verbose --noStackTrace",
|
|
"test:non-breaking-spaces": "jest tests/markdown/non-breaking-spaces.test.js --verbose --noStackTrace",
|
|
"test:emojis": "jest tests/markdown/emojis.test.js --verbose --noStackTrace",
|
|
"test:route": "jest tests/routes/static-pages.test.js --verbose",
|
|
"test:safehtml": "jest tests/html/safeHTML.test.js --verbose",
|
|
"phb": "node --experimental-require-module scripts/phb.js",
|
|
"prod": "set NODE_ENV=production && npm run build",
|
|
"postinstall": "npm run build",
|
|
"start": "node --experimental-require-module server.js"
|
|
},
|
|
"author": "stolksdorf",
|
|
"license": "MIT",
|
|
"eslintIgnore": [
|
|
"build/*"
|
|
],
|
|
"jest": {
|
|
"testTimeout": 30000,
|
|
"modulePaths": [
|
|
"node_modules",
|
|
"shared",
|
|
"server"
|
|
],
|
|
"transformIgnorePatterns": [
|
|
"node_modules/(?!nanoid/).*"
|
|
],
|
|
"coveragePathIgnorePatterns": [
|
|
"build/*"
|
|
],
|
|
"coverageThreshold": {
|
|
"global": {
|
|
"statements": 50,
|
|
"branches": 40,
|
|
"functions": 40,
|
|
"lines": 50
|
|
},
|
|
"server/homebrew.api.js": {
|
|
"statements": 70,
|
|
"branches": 50,
|
|
"functions": 65,
|
|
"lines": 70
|
|
}
|
|
},
|
|
"setupFilesAfterEnv": [
|
|
"jest-expect-message"
|
|
]
|
|
},
|
|
"dependencies": {
|
|
"@babel/core": "^7.26.0",
|
|
"@babel/plugin-transform-runtime": "^7.25.9",
|
|
"@babel/preset-env": "^7.26.0",
|
|
"@babel/preset-react": "^7.26.3",
|
|
"@googleapis/drive": "^8.14.0",
|
|
"body-parser": "^1.20.2",
|
|
"classnames": "^2.5.1",
|
|
"codemirror": "^5.65.6",
|
|
"cookie-parser": "^1.4.7",
|
|
"core-js": "^3.39.0",
|
|
"cors": "^2.8.5",
|
|
"create-react-class": "^15.7.0",
|
|
"dedent-tabs": "^0.10.3",
|
|
"dompurify": "^3.2.3",
|
|
"expr-eval": "^2.0.2",
|
|
"express": "^4.21.2",
|
|
"express-async-handler": "^1.2.0",
|
|
"express-static-gzip": "2.2.0",
|
|
"fs-extra": "11.2.0",
|
|
"idb-keyval": "^6.2.1",
|
|
"js-yaml": "^4.1.0",
|
|
"jwt-simple": "^0.5.6",
|
|
"less": "^3.13.1",
|
|
"lodash": "^4.17.21",
|
|
"marked": "11.2.0",
|
|
"marked-emoji": "^1.4.3",
|
|
"marked-extended-tables": "^1.0.10",
|
|
"marked-gfm-heading-id": "^3.2.0",
|
|
"marked-smartypants-lite": "^1.0.2",
|
|
"markedLegacy": "npm:marked@^0.3.19",
|
|
"moment": "^2.30.1",
|
|
"mongoose": "^8.9.2",
|
|
"nanoid": "5.0.9",
|
|
"nconf": "^0.12.1",
|
|
"react": "^18.3.1",
|
|
"react-dom": "^18.3.1",
|
|
"react-frame-component": "^4.1.3",
|
|
"react-router": "^7.0.2",
|
|
"sanitize-filename": "1.6.3",
|
|
"superagent": "^10.1.1",
|
|
"vitreum": "git+https://git@github.com/calculuschild/vitreum.git"
|
|
},
|
|
"devDependencies": {
|
|
"@stylistic/stylelint-plugin": "^3.1.1",
|
|
"babel-plugin-transform-import-meta": "^2.2.1",
|
|
"eslint": "^9.17.0",
|
|
"eslint-plugin-jest": "^28.10.0",
|
|
"eslint-plugin-react": "^7.37.2",
|
|
"globals": "^15.14.0",
|
|
"jest": "^29.7.0",
|
|
"jest-expect-message": "^1.1.3",
|
|
"jsdom-global": "^3.0.2",
|
|
"postcss-less": "^6.0.0",
|
|
"stylelint": "^16.12.0",
|
|
"stylelint-config-recess-order": "^5.1.1",
|
|
"stylelint-config-recommended": "^14.0.1",
|
|
"supertest": "^7.0.0"
|
|
}
|
|
}
|