{
    "name": "spacebar-server",
    "version": "1.0.0",
    "description": "A Spacebar server written in Node.js",
    "scripts": {
        "prepare": "husky install",
        "postinstall": "patch-package",
        "start": "node --enable-source-maps dist/bundle/start.js",
        "start:api": "node --enable-source-maps dist/api/start.js",
        "start:cdn": "node --enable-source-maps dist/cdn/start.js",
        "start:gateway": "node --enable-source-maps dist/gateway/start.js",
        "start:webrtc": "node --enable-source-maps dist/webrtc/start.js",
        "build": "npm run build:src && npm run generate:schema && npm run generate:openapi",
        "build:src": "tsc -b -v",
        "build:tsgo": "npm run build:src:tsgo && npm run generate:schema && npm run generate:openapi",
        "build:src:tsgo": "rm -rf dist/* tsconfig.tsbuildinfo && tsgo -b -v",
        "watch": "tsc -w -b .",
        "test": "node scripts/test.js",
        "lint": "eslint .",
        "setup": "npm run build && npm run generate:schema",
        "sync:db": "npm run build && node scripts/syncronise.js",
        "generate:rights": "node scripts/rights.js",
        "generate:schema": "node scripts/schema.js",
        "generate:migration": "node -r dotenv/config -r module-alias/register node_modules/typeorm/cli.js migration:generate -d dist/util/util/Database.js",
        "generate:openapi": "node scripts/openapi.js",
        "add:license": "node scripts/license.js",
        "migrate-from-staging": "node -r dotenv/config -r module-alias/register scripts/stagingMigration/index.js",
        "node:tests": "npm run build:src:tsgo && node -r dotenv/config -r module-alias/register --enable-source-maps --test --experimental-test-coverage dist/**/*.test.js",
        "apply:migrations": "node --enable-source-maps dist/apply-migrations.js"
    },
    "main": "dist/bundle/index.js",
    "types": "src/bundle/index.ts",
    "repository": {
        "type": "git",
        "url": "git+https://github.com/spacebarchat/server.git"
    },
    "author": "Spacebar",
    "license": "AGPL-3.0-only",
    "bugs": {
        "url": "https://github.com/spacebarchat/server/issues"
    },
    "imports": {
        "#*": "./dist/*/index.js"
    },
    "homepage": "https://spacebar.chat",
    "devDependencies": {
        "@eslint/eslintrc": "^3.3.5",
        "@eslint/js": "^9.14.0",
        "@spacebarchat/spacebar-webrtc-types": "^1.0.1",
        "@types/amqplib": "^0.10.8",
        "@types/bcrypt": "^6.0.0",
        "@types/body-parser": "^1.19.6",
        "@types/cookie-parser": "^1.4.10",
        "@types/express": "^5.0.6",
        "@types/i18next-node-fs-backend": "^2.1.5",
        "@types/json-bigint": "^1.0.4",
        "@types/jsonwebtoken": "^9.0.10",
        "@types/module-alias": "^2.0.4",
        "@types/morgan": "^1.9.10",
        "@types/multer": "^2.1.0",
        "@types/murmurhash-js": "^1.0.6",
        "@types/node": "^24.12.0",
        "@types/nodemailer": "^7.0.11",
        "@types/probe-image-size": "^7.2.5",
        "@types/sharp": "^0.31.1",
        "@types/ws": "^8.18.1",
        "@typescript-eslint/eslint-plugin": "^8.57.0",
        "@typescript-eslint/parser": "^8.57.0",
        "@typescript/native-preview": "^7.0.0-dev.20260119.1",
        "eslint": "^9.39.4",
        "globals": "^16.5.0",
        "husky": "^9.1.7",
        "patch-package": "^8.0.1",
        "prettier": "^3.8.1",
        "pretty-quick": "^4.2.2",
        "ts-node": "^10.9.2",
        "typescript": "^5.9.3",
        "typescript-json-schema": "^0.65.1"
    },
    "dependencies": {
        "@spacebarchat/pion-webrtc": "^0.0.3",
        "@toondepauw/node-zstd": "^1.2.0",
        "ajv": "^8.18.0",
        "ajv-formats": "^3.0.1",
        "amqplib": "^0.10.9",
        "badge-maker": "^5.0.2",
        "bcrypt": "^6.0.0",
        "body-parser": "^2.2.2",
        "chalk": "^5.6.2",
        "cheerio": "^1.2.0",
        "cookie-parser": "^1.4.7",
        "discord-protos": "1.2.102",
        "dotenv": "^17.3.1",
        "email-providers": "^2.22.0",
        "exif-be-gone": "^1.5.1",
        "express": "^5.2.1",
        "fast-zlib": "^2.0.1",
        "fido2-lib": "^3.5.9",
        "file-type": "^21.3.2",
        "form-data": "^4.0.5",
        "i18next": "^25.8.18",
        "i18next-fs-backend": "^2.6.1",
        "i18next-http-middleware": "^3.9.2",
        "image-size": "^2.0.2",
        "json-bigint": "^1.0.0",
        "jsonwebtoken": "^9.0.3",
        "module-alias": "^2.3.4",
        "morgan": "^1.10.1",
        "ms": "^2.1.3",
        "multer": "^2.1.1",
        "murmurhash-js": "^1.0.0",
        "node-2fa": "^2.0.3",
        "pg": "^8.20.0",
        "pg-query-stream": "^4.14.0",
        "picocolors": "^1.1.1",
        "probe-image-size": "^7.2.3",
        "reflect-metadata": "^0.2.2",
        "tslib": "^2.8.1",
        "typeorm": "^0.3.28",
        "wretch": "^2.11.1",
        "ws": "^8.19.0"
    },
    "_moduleAliases": {
        "@spacebar/api": "dist/api",
        "@spacebar/cdn": "dist/cdn",
        "@spacebar/gateway": "dist/gateway",
        "@spacebar/util": "dist/util",
        "@spacebar/webrtc": "dist/webrtc",
        "@spacebar/schemas": "dist/schemas",
        "lambert-server": "dist/util/util/lambert-server"
    },
    "optionalDependencies": {
        "@sendgrid/mail": "^8.1.6",
        "@yukikaze-bot/erlpack": "^1.0.1",
        "jimp": "^1.6.0",
        "mailgun.js": "^12.7.1",
        "node-mailjet": "^6.0.11",
        "nodemailer": "^7.0.13"
    },
    "overrides": {
        "typeorm": {
            "sqlite3": "../_EXCLUDED_"
        }
    }
}
