{ "name": "graphbrainz", "version": "9.0.0", "description": "A GraphQL schema, Express server, and middleware for querying the MusicBrainz.", "keywords": [ "musicbrainz", "graphql", "api", "express", "middleware", "relay" ], "homepage": "https://github.com/exogen/graphbrainz", "author": { "name": "Brian Beck", "email": "exogen@gmail.com", "url": "https://brianbeck.com/" }, "repository": { "type": "git", "url": "https://github.com/exogen/graphbrainz.git" }, "license": "MIT", "engines": { "node": ">=12.18.0", "npm": ">=6.0.0" }, "type": "module", "main": "./src/index.js", "exports": { ".": "./src/index.js", "./extensions/cover-art-archive": "./extensions/cover-art-archive.js", "./extensions/fanart-tv": "./extensions/fanart-tv.js", "./extensions/mediawiki": "./extensions/mediawiki.js", "./extensions/the-audio-db": "./extensions/the-audio-db.js", "./package.json": "./package.json", "./schema.json": "./schema.json" }, "bin": "cli.js", "files": [ "extensions", "src", "cli.js", "schema.json" ], "scripts": { "build": "npm run update-schema && npm run build:docs", "build:docs": "npm run build:docs:readme && npm run build:docs:schema && npm run build:docs:types && npm run build:docs:extensions", "build:docs:extensions": "node scripts/build-extension-docs.js", "build:docs:readme": "doctoc --notitle README.md docs/extensions/README.md", "build:docs:schema": "printf '# GraphQL Schema\\n\\n%s\n' \"$(npm run -s print-schema:md)\" > docs/schema.md", "build:docs:types": "graphql-markdown ./schema.json --no-title --update-file docs/types.md", "deploy": "./scripts/deploy.sh", "format": "npm run lint:fix", "lint": "eslint .", "lint:fix": "eslint --fix .", "preversion": "npm run update-schema && npm run build:docs && git add schema.json docs", "print-schema": "node scripts/print-schema.js", "print-schema:json": "npm run print-schema -- --json", "print-schema:md": "printf '```graphql\\n%s\\n```' \"$(npm run -s print-schema)\"", "start": "node cli.js", "start:dev": "nodemon cli.js", "test": "npm run lint && npm run test:coverage", "test:coverage": "c8 --all npm run test:only", "test:only": "cross-env NOCK_MODE=play ava", "test:record": "cross-env NOCK_MODE=record ava --concurrency=1 --timeout=1m", "test:record-new": "cross-env NOCK_MODE=cache ava --concurrency=1 --timeout=1m", "test:watch": "npm run test:only -- --watch", "update-schema": "npm run -s print-schema:json > schema.json" }, "ava": { "require": [ "dotenv/config" ] }, "ava-nock": { "fixtureDir": "fixtures", "pathFilter": [ "(([?&]api_key=)(\\w+))|((/json/)(\\w+)(/[\\w-]+-mb\\.php))", "$2$5*$7" ] }, "dependencies": { "@graphql-tools/schema": "^7.1.3", "compression": "^1.7.3", "cors": "^2.8.4", "dashify": "^2.0.0", "dataloader": "^2.0.0", "debug": "^4.3.1", "dotenv": "^8.2.0", "es6-error": "^4.1.1", "express": "^4.16.3", "express-graphql": "^0.12.0", "got": "^11.8.2", "graphql": "^15.5.0", "graphql-relay": "^0.6.0", "lru-cache": "^6.0.0", "pascalcase": "^1.0.0", "read-pkg-up": "^8.0.0" }, "devDependencies": { "ava": "^3.15.0", "ava-nock": "^2.1.0", "c8": "^7.7.1", "coveralls": "^3.0.2", "cross-env": "^7.0.3", "doctoc": "^2.0.0", "eslint": "^7.24.0", "eslint-config-prettier": "^8.1.0", "eslint-plugin-import": "^2.13.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-prettier": "^3.3.1", "eslint-plugin-promise": "^5.1.0", "graphql-markdown": "^6.0.0", "nodemon": "^2.0.7", "prettier": "^2.2.1", "rimraf": "^3.0.2", "sinon": "^10.0.0" } }