33 lines
1.8 KiB
JSON
33 lines
1.8 KiB
JSON
{
|
|
"private": true,
|
|
"name": "ninelands-game",
|
|
"version": "0.0.0",
|
|
"license": "GPL-3.0-only",
|
|
"type": "module",
|
|
"scripts": {
|
|
"build": "npm run build:client -- --metafile=dist/client.meta.json --minify && npm run build:server -- --metafile=dist/server.meta.json --minify",
|
|
"build:client": "esbuild --bundle --log-level=warning --sourcemap=linked --target=es2023 --format=esm --outdir=public --platform=browser --define:import.meta.env.MODE='\"reddit\"' --define:import.meta.env.BASE_URL='\"/\"' --define:__API_ORIGIN__='\"\"' --loader:.woff2=file --loader:.woff=file --asset-names=fonts/[name]-[hash] src/client/splash.ts src/client/game.ts",
|
|
"build:server": "esbuild --bundle --log-level=warning --sourcemap=linked --target=es2023 --format=cjs --outdir=dist/server --platform=node src/server/index.ts",
|
|
"clean": "rm -rf dist/ public/*.js* public/*.css* public/fonts/",
|
|
"format": "npm run lint -- --fix",
|
|
"lint": "biome check --error-on-warnings",
|
|
"playtest": "devvit playtest",
|
|
"test": "npm run test:types && npm run lint && npm run test:unit && npm run build",
|
|
"test:types": "tsc --build",
|
|
"test:unit": "esbuild --bundle --log-level=warning --platform=node --format=esm --packages=external --outdir=dist/test --outbase=src src/**/*.test.ts && node --test dist/test/**/*.test.js",
|
|
"publish": "npm run clean && npm run build && devvit publish",
|
|
"watch": "sh -c 'trap \"kill 0\" exit; npm run build:client -- --watch=forever& npm run build:server -- --watch=forever& wait' --"
|
|
},
|
|
"devDependencies": {
|
|
"@biomejs/biome": "2.6.6",
|
|
"@devvit/web": "0.15.3",
|
|
"@fontsource/pixelify-sans": "5.3.0",
|
|
"@types/node": "24.19.2",
|
|
"devvit": "0.15.3",
|
|
"esbuild": "0.28.2",
|
|
"typescript": "7.0.2"
|
|
},
|
|
"engines": {
|
|
"node": ">=24.0.0"
|
|
}
|
|
}
|