{ "name": "unleash-server", "description": "Unleash is an enterprise ready feature toggles service. It provides different strategies for handling feature toggles.", "version": "4.0.0-alpha.1", "keywords": [ "unleash", "feature toggle", "feature", "toggle" ], "files": [ "dist", "docs" ], "repository": { "type": "git", "url": "ssh://git@github.com:unleash/unleash.git" }, "bugs": { "url": "https://github.com/unleash/unleash/issues" }, "engines": { "node": ">=14" }, "license": "Apache-2.0", "main": "./dist/lib/server-impl.js", "bin": { "unleash": "./dist/bin/unleash.js" }, "scripts": { "start": "node ./dist/server.js", "start:google": "node examples/google-auth-unleash.js", "start:dev": "NODE_ENV=development tsc-watch --onSuccess \"node dist/server-dev.js\"", "copy-templates": "copyfiles -u 1 src/mailtemplates/**/*.mustache dist/", "db-migrate": "db-migrate --migrations-dir ./src/migrations", "lint": "eslint ./src", "build:watch": "tsc -w", "build": "yarn run copy-templates && tsc --pretty", "prepare": "yarn run build", "test": "yarn build && NODE_ENV=test PORT=4243 ava", "test:docker": "./scripts/docker-postgres.sh", "test:watch": "yarn test --watch", "test:coverage": "nyc --reporter=lcov yarn test", "test:coverage-report": "nyc report --reporter=text-lcov | coveralls", "clean": "rimraf dist/" }, "nyc": { "all": true, "include": [ "dist/lib/**/*.js" ], "exclude": [ "dist/bin", "dist/migrations" ], "exclude-after-remap": false }, "ava": { "files": [ "./dist/**/*.test.js", "!src/**/*", "!**/helpers/**/*", "!**/fixtures/**/*" ], "snapshotDir": "snapshots" }, "dependencies": { "async": "^3.1.0", "basic-auth": "^2.0.1", "bcrypt": "^5.0.1", "compression": "^1.7.3", "connect-session-knex": "^2.0.0", "cookie-parser": "^1.4.4", "cookie-session": "^2.0.0-rc.1", "db-migrate": "0.11.11", "db-migrate-pg": "^1.2.2", "db-migrate-shared": "^1.2.0", "deep-diff": "^1.0.2", "deepmerge": "^4.2.2", "errorhandler": "^1.5.1", "express": "^4.17.1", "express-session": "^1.17.1", "gravatar-url": "^3.1.0", "helmet": "^4.1.0", "joi": "^17.3.0", "js-yaml": "^3.14.0", "knex": "0.95.2", "log4js": "^6.0.0", "memoizee": "^0.4.15", "mime": "^2.4.2", "moment": "^2.24.0", "multer": "^1.4.1", "mustache": "^4.1.0", "node-fetch": "^2.6.1", "nodemailer": "^6.5.0", "owasp-password-strength-test": "^1.3.0", "parse-database-url": "^0.3.0", "pg": "^8.0.3", "pkginfo": "^0.4.1", "prom-client": "^13.1.0", "response-time": "^2.3.2", "serve-favicon": "^2.5.0", "unleash-frontend": "4.0.0-alpha.3", "uuid": "^8.3.2", "yargs": "^16.0.3" }, "devDependencies": { "@istanbuljs/nyc-config-typescript": "^1.0.1", "@passport-next/passport": "^3.1.0", "@passport-next/passport-google-oauth2": "^1.0.0", "@types/express": "^4.17.11", "@types/node": "^14.14.37", "@types/nodemailer": "^6.4.1", "@typescript-eslint/eslint-plugin": "^4.15.2", "@typescript-eslint/parser": "^4.15.2", "@types/bcrypt": "^3.0.0", "@types/owasp-password-strength-test": "^1.3.0", "ava": "^3.7.0", "copyfiles": "^2.4.1", "coveralls": "^3.1.0", "eslint": "^6.8.0", "eslint-config-airbnb-base": "^14.1.0", "eslint-config-airbnb-typescript": "^12.3.1", "eslint-config-prettier": "^6.10.1", "eslint-plugin-import": "^2.20.2", "eslint-plugin-prettier": "^3.1.3", "faker": "^5.3.1", "fetch-mock": "^9.11.0", "husky": "^4.2.3", "lint-staged": "^10.0.7", "lolex": "^6.0.0", "nyc": "^15.1.0", "passport": "^0.4.1", "passport-google-auth": "^1.0.2", "prettier": "^1.19.1", "proxyquire": "^2.1.3", "rimraf": "^3.0.2", "sinon": "^9.2.4", "source-map-support": "^0.5.19", "superagent": "^6.1.0", "supertest": "^5.0.0", "ts-node": "^9.1.1", "tsc-watch": "^4.2.9", "typescript": "^4.1.5" }, "resolutions": { "set-value": "^2.0.1", "db-migrate/rc/minimist": "^1.2.5", "nyc/**/minimist": "^1.2.5", "knex/liftoff/object.map/**/kind-of": "^6.0.3", "knex/liftoff/findup-sync/micromatc/kind-of": "^6.0.3", "knex/liftoff/findup-sync/micromatc/nanomatch/kind-of": "^6.0.3", "knex/liftoff/findup-sync/micromatch/define-property/**/kind-of": "^6.0.3", "googleapis": "^39.1.0", "node-forge": "^0.10.0" }, "lint-staged": { "*.js": [ "eslint --fix" ], "*.{json,css,md}": [ "prettier --write" ] }, "husky": { "hooks": { "pre-commit": "lint-staged" } }, "prettier": { "proseWrap": "never", "singleQuote": true, "tabWidth": 4, "trailingComma": "all", "overrides": [ { "files": "*.{json,yaml,yml,md}", "options": { "tabWidth": 2 } } ] } }