{ "name": "magicmirror", "version": "2.21.0-develop", "description": "The open source modular smart mirror platform.", "main": "js/electron.js", "scripts": { "start": "DISPLAY=\"${DISPLAY:=:0}\" ./node_modules/.bin/electron js/electron.js", "start:dev": "DISPLAY=\"${DISPLAY:=:0}\" ./node_modules/.bin/electron js/electron.js dev", "server": "node ./serveronly", "install-mm": "npm install --no-audit --no-fund --no-update-notifier --only=prod --omit=dev", "install-mm:dev": "npm install --no-audit --no-fund --no-update-notifier", "install-vendor": "echo \"Installing vendor files ...\n\" && cd vendor && npm install --loglevel=error --no-audit --no-fund --no-update-notifier", "install-fonts": "echo \"Installing fonts ...\n\" && cd fonts && npm install --loglevel=error --no-audit --no-fund --no-update-notifier", "postinstall": "npm run install-vendor && npm run install-fonts && echo \"MagicMirror² installation finished successfully! \n\"", "test": "NODE_ENV=test jest -i --forceExit", "test:coverage": "NODE_ENV=test nyc --reporter=lcov --reporter=text jest -i --forceExit", "test:electron": "NODE_ENV=test jest --selectProjects electron -i --forceExit", "test:e2e": "NODE_ENV=test jest --selectProjects e2e -i --forceExit", "test:unit": "NODE_ENV=test jest --selectProjects unit -i --forceExit", "test:prettier": "prettier . --check", "test:js": "eslint 'js/**/*.js' 'modules/default/**/*.js' 'clientonly/*.js' 'serveronly/*.js' 'translations/*.js' 'vendor/*.js' 'tests/**/*.js' 'config/*' --config .eslintrc.json", "test:css": "stylelint 'css/main.css' 'fonts/*.css' 'modules/default/**/*.css' 'vendor/*.css' --config .stylelintrc.json", "test:calendar": "node ./modules/default/calendar/debug.js", "config:check": "node js/check_config.js", "lint:prettier": "prettier . --write", "lint:js": "eslint 'js/**/*.js' 'modules/default/**/*.js' 'clientonly/*.js' 'serveronly/*.js' 'translations/*.js' 'vendor/*.js' 'tests/**/*.js' 'config/*' --config .eslintrc.json --fix", "lint:css": "stylelint 'css/main.css' 'fonts/*.css' 'modules/default/**/*.css' 'vendor/*.css' --config .stylelintrc.json --fix", "lint:staged": "pretty-quick --staged", "prepare": "[ -f node_modules/.bin/husky ] && husky install || echo no husky installed." }, "repository": { "type": "git", "url": "git+https://github.com/MichMich/MagicMirror.git" }, "keywords": [ "magic mirror", "magicmirror", "smart mirror", "mirror UI", "modular" ], "author": "Michael Teeuw", "contributors": [ "https://github.com/MichMich/MagicMirror/graphs/contributors" ], "license": "MIT", "bugs": { "url": "https://github.com/MichMich/MagicMirror/issues" }, "homepage": "https://magicmirror.builders", "devDependencies": { "eslint-config-prettier": "^8.5.0", "eslint-plugin-jest": "^26.5.3", "eslint-plugin-jsdoc": "^39.3.3", "eslint-plugin-prettier": "^4.0.0", "express-basic-auth": "^1.2.1", "husky": "^8.0.1", "jest": "^28.1.1", "jsdom": "^20.0.0", "lodash": "^4.17.21", "nyc": "^15.1.0", "playwright": "^1.22.2", "prettier": "^2.7.1", "pretty-quick": "^3.1.3", "sinon": "^14.0.0", "stylelint": "^14.9.1", "stylelint-config-prettier": "^9.0.3", "stylelint-config-standard": "^26.0.0", "stylelint-prettier": "^2.0.0", "suncalc": "^1.9.0" }, "optionalDependencies": { "electron": "^19.0.6" }, "dependencies": { "colors": "^1.4.0", "console-stamp": "^3.0.6", "digest-fetch": "^1.2.1", "eslint": "^8.18.0", "express": "^4.18.1", "express-ipfilter": "^1.2.0", "feedme": "^2.0.2", "helmet": "^5.1.0", "iconv-lite": "^0.6.3", "luxon": "^1.28.0", "module-alias": "^2.2.2", "moment": "^2.29.3", "node-fetch": "^2.6.7", "node-ical": "^0.15.1", "socket.io": "^4.5.1" }, "_moduleAliases": { "node_helper": "js/node_helper.js", "logger": "js/logger.js", "fetch": "js/fetch.js" }, "engines": { "node": ">=14" }, "jest": { "verbose": true, "testTimeout": 20000, "testSequencer": "/tests/configs/test_sequencer.js", "projects": [ { "displayName": "unit", "moduleNameMapper": { "logger": "/js/logger.js" }, "testMatch": [ "**/tests/unit/**/*.[jt]s?(x)" ], "testPathIgnorePatterns": [ "/tests/unit/mocks" ] }, { "displayName": "electron", "testMatch": [ "**/tests/electron/**/*.[jt]s?(x)" ] }, { "displayName": "e2e", "setupFilesAfterEnv": [ "/tests/e2e/mock-console.js" ], "testMatch": [ "**/tests/e2e/**/*.[jt]s?(x)" ], "modulePaths": [ "/js/" ], "testPathIgnorePatterns": [ "/tests/e2e/modules/mocks", "/tests/e2e/modules/basic-auth.js", "/tests/e2e/global-setup.js", "/tests/e2e/mock-console.js" ] } ] } }