buttercup-pw/buttercup-core

View on GitHub
package.json

Summary

Maintainability
Test Coverage
{
  "name": "buttercup",
  "version": "7.7.0",
  "description": "A NodeJS password vault.",
  "type": "module",
  "exports": {
    ".": {
      "browser": "./dist/web/index.js",
      "default": "./dist/node/index.js"
    },
    "./web": "./dist/web/index.js"
  },
  "react-native": "./dist/web/index.js",
  "types": "dist/node/index.d.ts",
  "contributors": [
    {
      "name": "Perry Mitchell",
      "email": "perry@perrymitchell.net"
    }
  ],
  "scripts": {
    "analyse": "ANALYSE=bundle npm run build",
    "build": "run-s clean build:node build:web",
    "build:node": "tsc && npm run build:node:rename",
    "build:node:rename": "mv ./dist/node/index.node.js ./dist/node/index.js && mv ./dist/node/index.node.d.ts ./dist/node/index.d.ts",
    "build:web": "run-s build:web:source build:web:types",
    "build:web:source": "webpack --config webpack.config.cjs --mode=production",
    "build:web:types": "tsc --emitDeclarationOnly --outDir ./dist/web && mv ./dist/web/index.web.d.ts ./dist/web/index.d.ts",
    "clean": "rimraf ./dist && rimraf ./web",
    "dev": "concurrently -k 'npm run dev:node' 'npm run dev:web'",
    "dev:node": "tsc --watch",
    "dev:web": "webpack --mode=development --watch",
    "docs": "npm run generate:docs",
    "format": "prettier --write '{source,test}/**/*.{js,ts}'",
    "generate:docs": "jsdoc2md 'source/**/*.js' > API.md",
    "generate:vault": "npm run build:node && node scripts/gen_vault_format_a.js && node scripts/gen_vault_format_b.js",
    "prepublishOnly": "run-s build",
    "test": "run-s test:node test:web test:format",
    "test:format": "prettier --check '{source,test}/**/*.{js,ts}'",
    "test:integration": "npm run build:node && mocha -r test/index.js --timeout 15000 'test/integration/**/*.spec.js'",
    "test:integration:watch": "nodemon --exec 'npm run test:integration' --watch source --watch test",
    "test:node": "npm run build:node && nyc mocha -r test/index.js --timeout 15000 'test/{unit,integration}/**/*.spec.js'",
    "test:unit": "npm run build:node && mocha -r test/index.js 'test/unit/**/*.spec.js'",
    "test:unit:watch": "nodemon --exec 'npm run test:unit' --watch source --watch test",
    "test:web": "karma start karma.conf.cjs",
    "test:web:production": "BUNDLE=production karma start"
  },
  "files": [
    "dist/**/*.js",
    "dist/**/*.d.ts",
    "*.md"
  ],
  "engines": {
    "node": ">=14"
  },
  "lint-staged": {
    "{source,test}/**/*.{js,ts}": [
      "prettier --write"
    ]
  },
  "husky": {
    "hooks": {
      "pre-commit": "lint-staged"
    }
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/buttercup/buttercup-core"
  },
  "keywords": [
    "password",
    "vault",
    "credentials",
    "login",
    "secure",
    "buttercup"
  ],
  "author": "Perry Mitchell <perry@perrymitchell.net>",
  "license": "MIT",
  "bugs": {
    "url": "https://github.com/buttercup/buttercup-core/issues"
  },
  "homepage": "https://github.com/buttercup/buttercup-core#readme",
  "dependencies": {
    "@buttercup/channel-queue": "^1.4.0",
    "@buttercup/dropbox-client": "^2.2.0",
    "@buttercup/googledrive-client": "^2.3.0",
    "crypto-random-string": "^5.0.0",
    "eventemitter3": "^5.0.0",
    "fast-levenshtein": "^3.0.0",
    "foreachasync": "^5.1.3",
    "form-data": "^4.0.0",
    "fuse.js": "^6.6.2",
    "global": "^4.4.0",
    "hash.js": "^1.1.7",
    "iocane": "^5.2.0",
    "is-promise": "^4.0.0",
    "layerr": "^2.0.1",
    "pako": "^1.0.11",
    "path-posix": "^1.0.0",
    "pify": "^6.1.0",
    "url-join": "^5.0.0",
    "uuid": "^9.0.1",
    "webdav": "^5.5.0"
  },
  "devDependencies": {
    "@babel/cli": "^7.23.4",
    "@babel/core": "^7.23.5",
    "@babel/plugin-proposal-class-properties": "^7.18.6",
    "@babel/plugin-proposal-object-rest-spread": "^7.20.7",
    "@babel/preset-env": "^7.23.5",
    "@types/node": "^20.10.4",
    "arraybuffer-loader": "^1.0.8",
    "babel-loader": "^9.1.3",
    "base64-js": "^1.5.1",
    "chai": "^4.3.10",
    "concurrently": "^8.2.2",
    "husky": "^4.3.8",
    "jsdoc-to-markdown": "^8.0.0",
    "karma": "^6.4.2",
    "karma-chrome-launcher": "^3.2.0",
    "karma-firefox-launcher": "^2.1.2",
    "karma-mocha": "^2.0.1",
    "karma-sinon": "^1.0.5",
    "karma-spec-reporter": "^0.0.36",
    "karma-webpack": "^5.0.0",
    "lint-staged": "^15.2.0",
    "mocha": "^10.2.0",
    "nested-property": "^4.0.0",
    "nodemon": "^3.0.2",
    "npm-run-all": "^4.1.1",
    "null-loader": "^4.0.1",
    "nyc": "^15.1.0",
    "prettier": "^3.1.0",
    "resolve-typescript-plugin": "^2.0.1",
    "rimraf": "^5.0.5",
    "sinon": "^17.0.1",
    "sleep-promise": "^9.1.0",
    "tmp": "^0.2.1",
    "ts-loader": "^9.5.1",
    "typescript": "^5.3.3",
    "webdav-server": "^2.6.2",
    "webpack": "^5.89.0",
    "webpack-bundle-analyzer": "^4.10.1",
    "webpack-cli": "^5.1.4"
  }
}