{ "name": "habitica", "description": "A habit tracker app which treats your goals like a Role Playing Game.", "version": "3.25.2", "main": "./website/server/index.js", "dependencies": { "accepts": "^1.3.2", "amazon-payments": "0.0.4", "amplitude": "^2.0.3", "apidoc": "^0.16.0", "apn": "^1.7.6", "async": "^1.5.0", "aws-sdk": "^2.0.25", "babel-plugin-transform-async-to-module-method": "^6.8.0", "babel-polyfill": "^6.6.1", "babel-preset-es2015": "^6.6.0", "babel-register": "^6.6.0", "babelify": "^7.2.0", "bluebird": "^3.3.5", "body-parser": "^1.15.0", "bower": "~1.3.12", "browserify": "~12.0.1", "compression": "^1.6.1", "connect-ratelimit": "0.0.7", "cookie-session": "^1.2.0", "coupon-code": "^0.4.3", "csv-stringify": "^1.0.2", "cwait": "^1.0.0", "domain-middleware": "~0.1.0", "estraverse": "^4.1.1", "express": "~4.13.3", "express-csv": "~0.6.0", "express-validator": "^2.18.0", "glob": "^4.3.5", "got": "^6.1.1", "grunt": "~0.4.1", "grunt-cli": "~0.1.9", "grunt-contrib-clean": "~0.6.0", "grunt-contrib-copy": "~0.6.0", "grunt-contrib-cssmin": "~0.10.0", "grunt-contrib-stylus": "~0.20.0", "grunt-contrib-uglify": "~0.6.0", "grunt-contrib-watch": "~0.6.1", "grunt-hashres": "~0.4.1", "grunt-karma": "~0.12.1", "gulp": "^3.9.0", "gulp-babel": "^6.1.2", "gulp-grunt": "^0.5.2", "gulp-imagemin": "^2.4.0", "gulp-nodemon": "^2.0.4", "gulp-sourcemaps": "^1.6.0", "gulp-uglify": "^1.4.2", "gulp.spritesmith": "^4.1.0", "icalendar": "lefnire/node-icalendar#e06da0e55901f0ba940dfadc42c158ed0b1fead9", "image-size": "~0.3.2", "in-app-purchase": "^1.1.6", "jade": "~1.11.0", "js2xmlparser": "~1.0.0", "lodash": "^3.10.1", "lodash.setwith": "^4.2.0", "markdown-it": "^6.0.1", "merge-stream": "^1.0.0", "method-override": "^2.3.5", "moment": "^2.13.0", "mongoose": "^4.4.16", "mongoose-id-autoinc": "~2013.7.14-4", "morgan": "^1.7.0", "nconf": "~0.8.2", "newrelic": "^1.27.2", "nib": "^1.1.0", "nodemailer": "^2.3.2", "object-path": "^0.9.2", "pageres": "^4.1.1", "passport": "~0.2.1", "passport-facebook": "2.0.0", "paypal-ipn": "3.0.0", "paypal-rest-sdk": "^1.2.1", "pretty-data": "^0.40.0", "ps-tree": "^1.0.0", "push-notify": "habitrpg/push-notify#v1.2.0", "pusher": "^1.3.0", "request": "~2.72.0", "rimraf": "^2.4.3", "run-sequence": "^1.1.4", "s3-upload-stream": "^1.0.6", "serve-favicon": "^2.3.0", "stripe": "^4.2.0", "superagent": "^1.8.3", "swagger-node-express": "lefnire/swagger-node-express#habitrpg", "universal-analytics": "~0.3.2", "uuid": "^2.0.1", "validator": "^4.9.0", "vinyl-buffer": "^1.0.0", "vinyl-source-stream": "^1.1.0", "winston": "^2.1.0" }, "private": true, "engines": { "node": "^4.3.1", "npm": "^3.8.9" }, "scripts": { "lint": "eslint .", "test": "npm run lint && gulp test", "test:api-v2:unit": "mocha test/server_side", "test:api-v2:integration": "mocha test/api/v2 --recursive", "test:api-v3": "gulp test:api-v3", "test:api-v3:unit": "gulp test:api-v3:unit", "test:api-v3:integration": "gulp test:api-v3:integration", "test:api-v3:integration:separate-server": "gulp test:api-v3:integration:separate-server", "test:api-legacy": "istanbul cover -i \"website/server/**\" --dir coverage/api ./node_modules/mocha/bin/_mocha test/api-legacy", "test:sanity": "mocha test/sanity --recursive", "test:common": "mocha test/common --recursive", "test:content": "mocha test/content --recursive", "test:karma": "karma start --single-run", "test:karma:watch": "karma start", "test:prepare:webdriver": "webdriver-manager update", "test:e2e:webdriver": "webdriver-manager start", "test:e2e": "protractor test/e2e/protractor.conf.js", "test:nodemon": "gulp test:nodemon", "start": "gulp run:dev", "sprites": "gulp sprites:compile", "postinstall": "bower --config.interactive=false install -f; gulp build;", "coverage": "COVERAGE=true mocha --require register-handlers.js --reporter html-cov > coverage.html; open coverage.html" }, "devDependencies": { "babel-eslint": "^6.0.0", "chai": "^3.4.0", "chai-as-promised": "^5.1.0", "chalk": "^1.1.3", "coveralls": "^2.11.2", "csv": "~0.3.6", "deep-diff": "~0.1.4", "eslint": "~2.12.0", "eslint-config-habitrpg": "^1.0.0", "eslint-plugin-babel": "^3.0.0", "eslint-plugin-mocha": "^2.1.0", "event-stream": "^3.2.2", "expect.js": "~0.2.0", "istanbul": "^0.3.14", "karma": "~0.13.15", "karma-babel-preprocessor": "^6.0.1", "karma-chai-plugins": "~0.6.0", "karma-coverage": "^0.5.3", "karma-mocha": "^0.2.0", "karma-mocha-reporter": "^1.1.1", "karma-phantomjs-launcher": "~0.2.1", "lcov-result-merger": "^1.0.2", "mocha": "^2.3.3", "mongodb": "^2.0.46", "mongoskin": "~0.6.1", "nock": "^2.17.0", "phantomjs": "^1.9", "protractor": "^3.1.1", "require-again": "^1.0.1", "rewire": "^2.3.3", "shelljs": "^0.7.0", "sinon": "^1.17.2", "sinon-chai": "^2.8.0", "superagent-defaults": "^0.1.13", "vinyl-source-stream": "^1.0.0", "vinyl-transform": "^1.0.0", "xml2js": "^0.4.16" } }