{
  "name": "bree",
  "description": "The best job scheduler for Node.js and JavaScript with cron, dates, ms, later, and human-friendly support.  Works in Node v10+ and browsers (thanks to bthreads polyfill), uses workers to spawn sandboxed processes, and supports async/await, retries, throttling, concurrency, and cancelable promises (graceful shutdown).  Simple, fast, and lightweight.  Made for Forward Email and Lad.",
  "version": "6.5.0",
  "author": "Nick Baugh <niftylettuce@gmail.com> (http://niftylettuce.com/)",
  "ava": {
    "files": [
      "test/*.js",
      "test/**/*.js",
      "!test/jobs",
      "!test/noIndexJobs"
    ],
    "verbose": true,
    "require": [
      "events.once/polyfill"
    ]
  },
  "browser": {
    "fs": false
  },
  "bugs": {
    "url": "https://github.com/breejs/bree/issues",
    "email": "niftylettuce@gmail.com"
  },
  "contributors": [
    "Nick Baugh <niftylettuce@gmail.com> (http://niftylettuce.com/)",
    "shadowgate15 (https://github.com/shadowgate15)"
  ],
  "dependencies": {
    "@babel/runtime": "^7.12.5",
    "@breejs/later": "^4.1.0",
    "boolean": "^3.0.2",
    "bthreads": "^0.5.1",
    "combine-errors": "^3.0.3",
    "cron-validate": "^1.4.1",
    "debug": "^4.3.1",
    "human-interval": "^2.0.0",
    "is-string-and-not-blank": "^0.0.2",
    "is-valid-path": "^0.1.1",
    "ms": "^2.1.2",
    "p-wait-for": "3.1.0",
    "safe-timers": "^1.1.0"
  },
  "devDependencies": {
    "@babel/cli": "^7.12.7",
    "@babel/core": "^7.12.7",
    "@babel/plugin-transform-runtime": "^7.12.1",
    "@babel/preset-env": "^7.12.7",
    "@commitlint/cli": "latest",
    "@commitlint/config-conventional": "latest",
    "@goto-bus-stop/envify": "^5.0.0",
    "@sinonjs/fake-timers": "^6.0.1",
    "ava": "latest",
    "babelify": "^10.0.0",
    "browser-pack-flat": "^3.4.2",
    "browserify": "^17.0.0",
    "bundle-collapser": "^1.4.0",
    "codecov": "latest",
    "cross-env": "latest",
    "delay": "^4.4.0",
    "eslint": "^7.14.0",
    "eslint-config-xo-lass": "latest",
    "eslint-plugin-compat": "^3.8.0",
    "eslint-plugin-node": "^11.1.0",
    "events.once": "^2.0.2",
    "fixpack": "latest",
    "husky": "latest",
    "into-stream": "^6.0.0",
    "lint-staged": "latest",
    "nyc": "latest",
    "remark-cli": "latest",
    "remark-preset-github": "latest",
    "uglifyify": "^5.0.2",
    "unassertify": "^2.1.1",
    "xo": "^0.35.0"
  },
  "engines": {
    "node": ">= 10"
  },
  "files": [
    "lib",
    "dist"
  ],
  "homepage": "https://github.com/breejs/bree",
  "husky": {
    "hooks": {
      "pre-commit": "lint-staged",
      "commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
    }
  },
  "jsdelivr": "dist/bree.min.js",
  "keywords": [
    "agenda",
    "async",
    "await",
    "bee",
    "bree",
    "bull",
    "callback",
    "cancel",
    "cancelable",
    "child",
    "clear",
    "cron",
    "cronjob",
    "crontab",
    "date",
    "dates",
    "day",
    "dayjs",
    "delay",
    "english",
    "express",
    "expression",
    "frequencies",
    "frequency",
    "frequent",
    "friendly",
    "graceful",
    "human",
    "humans",
    "interval",
    "job",
    "jobs",
    "js",
    "koa",
    "koatiming",
    "lad",
    "lass",
    "later",
    "moment",
    "momentjs",
    "mongo",
    "mongodb",
    "mongoose",
    "p-cancel",
    "p-cancelable",
    "p-retry",
    "parse",
    "parser",
    "pretty",
    "process",
    "processors",
    "promise",
    "promises",
    "queue",
    "queues",
    "readable",
    "recur",
    "recurring",
    "redis",
    "redis",
    "reload",
    "restart",
    "run",
    "runner",
    "schedule",
    "scheduler",
    "setup",
    "spawn",
    "tab",
    "task",
    "tasker",
    "time",
    "timeout",
    "timer",
    "timers",
    "translated",
    "universalify",
    "worker",
    "workers"
  ],
  "license": "MIT",
  "main": "lib/index.js",
  "publishConfig": {
    "access": "public"
  },
  "repository": {
    "type": "git",
    "url": "https://github.com/breejs/bree"
  },
  "scripts": {
    "ava": "cross-env NODE_ENV=test ava",
    "browserify": "browserify src/index.js -o dist/bree.js -s Bree -g [ babelify --configFile ./.dist.babelrc ]",
    "build": "npm run build:clean && npm run build:lib && npm run build:dist",
    "build:clean": "rimraf lib dist",
    "build:dist": "npm run browserify && npm run minify",
    "build:lib": "babel --config-file ./.lib.babelrc src --out-dir lib",
    "coverage": "nyc report --reporter=text-lcov > coverage.lcov && codecov",
    "lint": "yarn run lint:js && yarn run lint:md && yarn run lint:lib && yarn run lint:dist",
    "lint:dist": "eslint --no-inline-config -c .dist.eslintrc dist",
    "lint:js": "xo",
    "lint:lib": "eslint -c .lib.eslintrc lib",
    "lint:md": "remark . -qfo",
    "minify": "cross-env NODE_ENV=production browserify src/index.js -o dist/bree.min.js -s Bree -g [ babelify --configFile ./.dist.babelrc ] -g unassertify -g @goto-bus-stop/envify -g uglifyify -p browser-pack-flat/plugin",
    "nyc": "cross-env NODE_ENV=test nyc ava",
    "pretest": "yarn run build && yarn run lint",
    "test": "cross-env NODE_ENV=test ava",
    "test-coverage": "cross-env NODE_ENV=test nyc yarn run test"
  },
  "unpkg": "dist/bree.min.js",
  "xo": {
    "prettier": true,
    "space": true,
    "extends": [
      "xo-lass"
    ],
    "ignore": [
      "config.js"
    ],
    "rules": {
      "capitalized-comments": "off",
      "unicorn/catch-error-name": "off",
      "node/no-unsupported-features/node-builtins": [
        "error",
        {
          "ignores": [
            "events.once"
          ]
        }
      ]
    },
    "overrides": [
      {
        "files": [
          "test/jobs/*.js"
        ],
        "rules": {
          "unicorn/no-process-exit": "off"
        }
      }
    ]
  }
}
