{ "name": "overseerr", "version": "0.1.0", "private": true, "scripts": { "dev": "nodemon -e ts --watch server --watch overseerr-api.yml -e .json,.ts,.yml -x ts-node -r tsconfig-paths/register --files --project server/tsconfig.json server/index.ts", "build:server": "tsc --project server/tsconfig.json && copyfiles -u 2 server/templates/**/*.{html,pug} dist/templates && tsc-alias -p server/tsconfig.json", "build:next": "next build", "build": "yarn build:next && yarn build:server", "lint": "eslint \"./server/**/*.{ts,tsx}\" \"./src/**/*.{ts,tsx}\" --cache", "start": "NODE_ENV=production node dist/index.js", "i18n:extract": "extract-messages -l=en -o src/i18n/locale -d en --flat true --overwriteDefault true \"./src/**/!(*.test).{ts,tsx}\"", "migration:generate": "ts-node -r tsconfig-paths/register --project server/tsconfig.json ./node_modules/typeorm/cli.js migration:generate -d server/datasource.ts", "migration:create": "ts-node -r tsconfig-paths/register --project server/tsconfig.json ./node_modules/typeorm/cli.js migration:create -d server/datasource.ts", "migration:run": "ts-node -r tsconfig-paths/register --project server/tsconfig.json ./node_modules/typeorm/cli.js migration:run -d server/datasource.ts", "format": "prettier --loglevel warn --write --cache .", "format:check": "prettier --check --cache .", "typecheck": "yarn typecheck:server && yarn typecheck:client", "typecheck:server": "tsc --project server/tsconfig.json --noEmit", "typecheck:client": "tsc --noEmit", "prepare": "husky install", "cypress:open": "cypress open", "cypress:prepare": "ts-node -r tsconfig-paths/register --files --project server/tsconfig.json server/scripts/prepareTestDb.ts", "cypress:build": "yarn build && yarn cypress:prepare" }, "repository": { "type": "git", "url": "https://github.com/sct/overseerr.git" }, "license": "MIT", "dependencies": { "@formatjs/intl-displaynames": "6.8.8", "@formatjs/intl-locale": "3.4.6", "@formatjs/intl-pluralrules": "5.4.1", "@formatjs/intl-utils": "3.8.4", "@headlessui/react": "1.7.19", "@heroicons/react": "2.2.0", "@supercharge/request-ip": "1.2.0", "@svgr/webpack": "6.5.1", "@tanem/react-nprogress": "5.0.53", "ace-builds": "1.37.1", "axios": "1.7.9", "axios-rate-limit": "1.4.0", "bcrypt": "5.1.1", "bowser": "2.11.0", "connect-typeorm": "1.1.4", "cookie-parser": "1.4.7", "copy-to-clipboard": "3.3.3", "country-flag-icons": "1.5.13", "cronstrue": "2.52.0", "csurf": "1.11.0", "date-fns": "2.30.0", "dayjs": "1.11.13", "email-templates": "9.0.0", "express": "4.21.2", "express-openapi-validator": "4.13.8", "express-rate-limit": "6.11.2", "express-session": "1.18.1", "formik": "2.4.6", "gravatar-url": "3.1.0", "intl": "1.2.5", "lodash": "4.17.21", "next": "12.3.4", "node-cache": "5.1.2", "node-gyp": "9.4.1", "node-schedule": "2.1.1", "nodemailer": "6.9.16", "openpgp": "5.11.2", "plex-api": "5.3.2", "pug": "3.0.3", "react": "18.3.1", "react-ace": "10.1.0", "react-animate-height": "2.1.2", "react-aria": "3.36.0", "react-dom": "18.3.1", "react-intersection-observer": "9.14.0", "react-intl": "6.8.9", "react-markdown": "8.0.7", "react-popper-tooltip": "4.4.2", "react-select": "5.9.0", "react-spring": "9.7.5", "react-tailwindcss-datepicker-sct": "1.3.4", "react-toast-notifications": "2.5.1", "react-truncate-markup": "5.1.2", "react-use-clipboard": "1.0.9", "reflect-metadata": "0.2.2", "secure-random-password": "0.2.3", "semver": "7.6.3", "sqlite3": "5.1.7", "swagger-ui-express": "4.6.3", "swr": "2.2.5", "typeorm": "0.3.20", "web-push": "3.6.7", "winston": "3.17.0", "winston-daily-rotate-file": "4.7.1", "xml2js": "0.6.2", "yamljs": "0.3.0", "yup": "0.32.11", "zod": "3.24.1" }, "devDependencies": { "@babel/cli": "7.26.4", "@commitlint/cli": "17.8.1", "@commitlint/config-conventional": "17.8.1", "@semantic-release/changelog": "6.0.3", "@semantic-release/commit-analyzer": "9.0.2", "@semantic-release/exec": "6.0.3", "@semantic-release/git": "10.0.1", "@tailwindcss/aspect-ratio": "0.4.2", "@tailwindcss/forms": "0.5.9", "@tailwindcss/typography": "0.5.15", "@types/bcrypt": "5.0.2", "@types/cookie-parser": "1.4.8", "@types/country-flag-icons": "1.2.2", "@types/csurf": "1.11.5", "@types/email-templates": "8.0.4", "@types/express": "4.17.21", "@types/express-session": "1.18.1", "@types/lodash": "4.17.13", "@types/node": "17.0.45", "@types/node-schedule": "2.1.7", "@types/nodemailer": "6.4.17", "@types/react": "18.3.18", "@types/react-dom": "18.3.5", "@types/react-transition-group": "4.4.12", "@types/secure-random-password": "0.2.3", "@types/semver": "7.5.8", "@types/swagger-ui-express": "4.1.7", "@types/web-push": "3.6.4", "@types/xml2js": "0.4.14", "@types/yamljs": "0.2.34", "@types/yup": "0.32.0", "@typescript-eslint/eslint-plugin": "5.62.0", "@typescript-eslint/parser": "5.62.0", "autoprefixer": "10.4.20", "babel-plugin-react-intl": "8.2.25", "babel-plugin-react-intl-auto": "3.3.0", "commitizen": "4.3.1", "copyfiles": "2.4.1", "cy-mobile-commands": "0.3.0", "cypress": "12.17.4", "cz-conventional-changelog": "3.3.0", "eslint": "8.57.1", "eslint-config-next": "12.3.4", "eslint-config-prettier": "8.10.0", "eslint-plugin-formatjs": "4.13.3", "eslint-plugin-jsx-a11y": "6.10.2", "eslint-plugin-no-relative-import-paths": "1.5.5", "eslint-plugin-prettier": "4.2.1", "eslint-plugin-react": "7.37.2", "eslint-plugin-react-hooks": "4.6.2", "extract-react-intl-messages": "4.1.1", "husky": "8.0.3", "lint-staged": "13.3.0", "nodemon": "2.0.22", "postcss": "8.4.49", "prettier": "2.8.8", "prettier-plugin-organize-imports": "3.2.4", "prettier-plugin-tailwindcss": "0.6.9", "semantic-release": "19.0.5", "semantic-release-docker-buildx": "1.0.1", "tailwindcss": "3.4.17", "ts-node": "10.9.2", "tsc-alias": "1.8.10", "tsconfig-paths": "4.2.0", "typescript": "4.9.5" }, "resolutions": { "sqlite3/node-gyp": "8.4.1", "@types/react": "18.3.18", "@types/react-dom": "18.3.5", "@types/express-session": "1.18.1" }, "config": { "commitizen": { "path": "./node_modules/cz-conventional-changelog" } }, "lint-staged": { "**/*.{ts,tsx,js}": [ "prettier --write", "eslint" ], "**/*.{json,md,css}": [ "prettier --write" ] }, "commitlint": { "extends": [ "@commitlint/config-conventional" ] }, "release": { "plugins": [ "@semantic-release/commit-analyzer", "@semantic-release/release-notes-generator", [ "@semantic-release/changelog", { "changelogFile": "CHANGELOG.md" } ], "@semantic-release/npm", [ "@semantic-release/git", { "assets": [ "package.json", "CHANGELOG.md" ], "message": "chore(release): ${nextRelease.version}" } ], "semantic-release-docker-buildx", [ "@semantic-release/github", { "addReleases": "bottom" } ] ], "branches": [ "master" ], "npmPublish": false, "publish": [ { "path": "semantic-release-docker-buildx", "buildArgs": { "COMMIT_TAG": "$GIT_SHA" }, "imageNames": [ "sctx/overseerr", "ghcr.io/sct/overseerr" ], "platforms": [ "linux/amd64", "linux/arm64", "linux/arm/v7" ] }, "@semantic-release/github" ] } }