{
  "name": "muse",
  "version": "2.9.5",
  "description": "🎧 a self-hosted Discord music bot that doesn't suck ",
  "repository": "git@github.com:museofficial/muse.git",
  "author": "Max Isom <hi@maxisom.me>",
  "license": "MIT",
  "private": true,
  "types": "dts/types",
  "type": "module",
  "engines": {
    "node": ">=18.17.0"
  },
  "files": [
    "src"
  ],
  "scripts": {
    "lint": "eslint \"src/**/*.{ts,tsx}\"",
    "lint:fix": "eslint \"src/**/*.{ts,tsx}\" --fix",
    "typecheck": "tsc --noEmit",
    "test": "npm run lint",
    "start": "npm run env:set-database-url -- tsx src/scripts/migrate-and-start.ts",
    "cache:clear-key-value": "npm run env:set-database-url tsx src/scripts/cache-clear-key-value.ts",
    "dev": "npm run env:set-database-url -- tsx watch src/scripts/start.ts",
    "migrations:generate": "npm run prisma:with-env migrate dev",
    "migrations:run": "npm run prisma:with-env migrate deploy",
    "prisma:with-env": "npm run env:set-database-url prisma",
    "prisma:generate": "prisma generate",
    "env:set-database-url": "tsx src/scripts/run-with-database-url.ts",
    "release": "release-it",
    "build": "tsc",
    "postinstall": "patch-package"
  },
  "devDependencies": {
    "@release-it/keep-a-changelog": "^2.3.0",
    "@types/bluebird": "^3.5.35",
    "@types/debug": "^4.1.5",
    "@types/fluent-ffmpeg": "^2.1.17",
    "@types/fs-capacitor": "^2.0.0",
    "@types/ms": "0.7.34",
    "@types/node": "^17.0.0",
    "@types/node-emoji": "^1.8.1",
    "@types/spotify-web-api-node": "^5.0.2",
    "@types/validator": "^13.12.2",
    "@types/ws": "8.5.4",
    "@typescript-eslint/eslint-plugin": "^4.31.1",
    "@typescript-eslint/parser": "^4.31.1",
    "eslint": "^7.32.0",
    "eslint-config-xo": "^0.39.0",
    "eslint-config-xo-typescript": "^0.44.0",
    "eslint-plugin-import": "2.29.1",
    "husky": "^4.3.8",
    "prisma": "5.21.1",
    "release-it": "^14.11.8",
    "type-fest": "^2.12.0",
    "typescript": "^4.6.4"
  },
  "eslintConfig": {
    "extends": [
      "xo",
      "xo-typescript/space"
    ],
    "parser": "@typescript-eslint/parser",
    "parserOptions": {
      "project": "./tsconfig.json"
    },
    "plugins": [
      "import"
    ],
    "rules": {
      "new-cap": "off",
      "@typescript-eslint/no-unused-vars": "off",
      "@typescript-eslint/no-unused-vars-experimental": "error",
      "@typescript-eslint/prefer-readonly-parameter-types": "off",
      "@typescript-eslint/no-implicit-any-catch": "off",
      "import/extensions": [
        "error",
        "ignorePackages"
      ]
    }
  },
  "husky": {
    "hooks": {
      "pre-commit": "npm test"
    }
  },
  "dependencies": {
    "@discordjs/builders": "1.1.0",
    "@discordjs/opus": "^0.8.0",
    "@discordjs/rest": "1.0.1",
    "@discordjs/voice": "0.17.0",
    "@distube/ytdl-core": "^4.14.4",
    "@distube/ytsr": "^2.0.0",
    "@prisma/client": "4.16.0",
    "@types/libsodium-wrappers": "^0.7.9",
    "array-shuffle": "^3.0.0",
    "debug": "^4.3.3",
    "delay": "^5.0.0",
    "discord-api-types": "0.32.1",
    "discord.js": "14.11.0",
    "dotenv": "^16.4.5",
    "execa": "^6.1.0",
    "fluent-ffmpeg": "^2.1.2",
    "fs-capacitor": "^7.0.1",
    "get-youtube-id": "^1.0.1",
    "got": "^12.0.2",
    "hasha": "^5.2.2",
    "inversify": "^6.0.1",
    "iso8601-duration": "^2.1.2",
    "libsodium-wrappers": "^0.7.9",
    "make-dir": "^3.1.0",
    "node-emoji": "^1.10.0",
    "nodesplash": "^0.1.1",
    "ora": "^8.1.0",
    "p-event": "^5.0.1",
    "p-limit": "^6.1.0",
    "p-queue": "^7.2.0",
    "p-retry": "6.2.0",
    "pagination.djs": "^4.0.10",
    "parse-duration": "1.0.2",
    "patch-package": "^8.0.0",
    "postinstall-postinstall": "^2.1.0",
    "read-pkg": "7.1.0",
    "reflect-metadata": "^0.1.13",
    "sponsorblock-api": "^0.2.4",
    "spotify-uri": "^3.0.2",
    "spotify-web-api-node": "^5.0.2",
    "sync-fetch": "^0.3.1",
    "tsx": "3.8.2",
    "xbytes": "^1.7.0",
    "ytsr": "^3.8.4"
  },
  "resolutions": {
    "@types/ws": "8.5.4"
  }
}