Server/project/package.json
Refringe ed8dbbd195 Adds Biome - Removes ESLint & Prettier (!383)
Boogidy, boogidy, boogidy. Let's go racing! 🏎️

Removes the over-complicated and super-slow setup we had with ESLint & Prettier in favour of Biome. The largest change with the formatting is moving from Allman braces to 1TBS braces. Other than that, it's *pretty much* the same. Ah, and that Biome runs formatting and linting on the entire project about x10 faster than the old system ran formatting on one file. Seriously, the guy who came up with that last solution should be fired. :runs:

I've kept all of the formatting and linting commands the same as before, with the main mamma-jamma being: `npm run format`, which applies formatting and linting changes to the entire project.

Formatting-on-save works (quickly!) by (1) ensuring that you're working within the VSC workspace (as you should be), and (2) have the recommended Biome VSC extension installed. The link to the Biome extension is in the README.

This limits our options on code formatting going forward; Biome, like prettier, is very opinionated with very few formatting options available. But I see this as a good thing. I'd rather spend my time arguing about which gun in Tarkov is the best, rather than coding brace styles...

...It's the TOZ, and it always will be. Don't DM me.

Co-authored-by: chomp <chomp@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/383
Co-authored-by: Refringe <me@refringe.com>
Co-committed-by: Refringe <me@refringe.com>
2024-07-22 21:15:57 +00:00

92 lines
3.2 KiB
JSON

{
"name": "spt-server",
"version": "3.9.0",
"author": "SPT Server",
"license": "NCSA",
"main": "obj/bundle.js",
"repository": "https://dev.sp-tarkov.com/SPT/Server",
"description": "The single-player modding framework for Escape From Tarkov.",
"icon": "assets/images/icon.ico",
"engines": {
"node": "20.11.1"
},
"scripts": {
"check:circular": "madge --circular --ts-config tsconfig.json --extensions ts ./src/",
"lint": "npx @biomejs/biome lint ./",
"lint:fix": "npx @biomejs/biome lint --write ./",
"style": "npx @biomejs/biome format ./",
"style:fix": "npx @biomejs/biome format --write ./",
"format": "npx @biomejs/biome check --write ./",
"test": "vitest run",
"test:watch": "vitest",
"test:coverage": "vitest run --coverage",
"test:ui": "vitest --ui --coverage",
"build:release": "cross-env PKG_CACHE_PATH=\"./.pkg-cache\" gulp build:release",
"build:debug": "cross-env PKG_CACHE_PATH=\"./.pkg-cache\" gulp build:debug",
"build:bleeding": "cross-env PKG_CACHE_PATH=\"./.pkg-cache\" gulp build:bleeding",
"build:bleedingmods": "cross-env PKG_CACHE_PATH=\"./.pkg-cache\" gulp build:bleedingmods",
"run:build": "gulp run:build",
"run:debug": "gulp run:debug",
"run:profiler": "gulp run:profiler",
"gen:types": "tsc -p tsconfig.typedef.json --resolveJsonModule",
"gen:docs": "typedoc --options ./typedoc.json --entryPointStrategy expand ./src",
"gen:items": "ts-node -r tsconfig-paths/register ./src/tools/ItemTplGenerator/ItemTplGeneratorProgram.ts"
},
"dependencies": {
"atomically": "~1.7",
"buffer-crc32": "~1.0",
"date-fns": "~2.30",
"date-fns-tz": "~2.0",
"i18n": "~0.15",
"json-fixer": "~1.6",
"json5": "~2.2",
"jsonc": "~2.0",
"mongoid-js": "~1.3",
"proper-lockfile": "~4.1",
"reflect-metadata": "~0.2",
"semver": "~7.6",
"source-map-support": "~0.5",
"string-similarity-js": "~2.1",
"tsyringe": "~4.8",
"typescript": "~5.4",
"winston": "~3.13",
"winston-daily-rotate-file": "~5.0",
"ws": "~8.17"
},
"devDependencies": {
"@biomejs/biome": "1.8.3",
"@pnpm/exe": "8.15.4",
"@swc/cli": "~0.3",
"@swc/core": "~1.4",
"@types/i18n": "~0.13",
"@types/node": "~20.11",
"@types/proper-lockfile": "~4.1",
"@types/semver": "~7.5",
"@types/ws": "~8.5",
"@vitest/coverage-istanbul": "~1.6",
"@vitest/ui": "~1.6",
"@yao-pkg/pkg": "5.11.5",
"@yao-pkg/pkg-fetch": "3.5.9",
"cross-env": "~7.0",
"fs-extra": "~11.2",
"gulp": "~4.0",
"gulp-decompress": "~3.0",
"gulp-download": "~0.0.1",
"gulp-execa": "~6.0",
"gulp-rename": "~2.0",
"madge": "~6.1",
"minimist": "~1.2",
"resedit": "~2.0",
"ts-node-dev": "~2.0",
"tsconfig-paths": "~4.2",
"typedoc": "~0.25",
"typemoq": "~2.1",
"vitest": "~1.6"
},
"targets": {
"default": {
"includeNodeModules": true
}
}
}