package.json
{
"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"
}
}