{ "name": "oodikone", "description": "An application for analyzing university data.", "scripts": { "cypress": "cypress", "cypress:open": "cypress open", "cypress:run": "cypress run --browser chrome", "instrument": "./scripts/instrument.sh", "eslint": "eslint", "lint:all": "eslint services/ updater/", "stylelint": "stylelint", "actionlint": "node-actionlint", "prettier": "prettier", "cli": "./cli.sh", "oodikone": "./run.sh oodikone anon up --detach", "oodikone:real": "./run.sh oodikone real up --detach", "oodikone:test": "./run.sh oodikone test up --detach", "updater": "./run.sh updater anon up --detach", "updater:real": "./run.sh updater real up --detach", "both": "./run.sh both anon up --detach", "both:real": "./run.sh both real up --detach", "docker:down": "./run.sh both anon down --remove-orphans; ./run.sh both real down --remove-orphans", "testupdater": "docker-compose --file docker-compose.ci.yml up --detach --no-recreate sis-updater-worker && SCHEDULE_IMMEDIATE=weekly EXIT_AFTER_IMMEDIATES=yes docker-compose --file docker-compose.ci.yml run sis-updater-scheduler npm start", "flushredis": "docker exec -it redis redis-cli flushall", "prepare": "husky", "rapodiff": "docker exec -t oodikone_backend_1 /opt/app-root/src/node_modules/.bin/tsx /opt/app-root/src/src/rapodiff/rapodiff.js", "install:local": "npm i && cd services/frontend && npm i && cd ../backend && npm i && cd ../../updater/sis-updater-scheduler && npm i && cd ../sis-updater-worker && npm i && cd ../..", "install:docker": "docker exec frontend npm i && docker exec oodikone_backend_1 npm i && docker exec sis-updater-scheduler npm i && docker exec oodikone_sis-updater-worker_1 npm i", "install:both": "npm run install:local && npm run install:docker" }, "repository": { "type": "git", "url": "git+https://github.com/UniversityOfHelsinkiCS/oodikone.git" }, "license": "ISC", "bugs": { "url": "https://github.com/UniversityOfHelsinkiCS/oodikone/issues" }, "homepage": "https://github.com/UniversityOfHelsinkiCS/oodikone#readme", "devDependencies": { "@cypress/code-coverage": "^3.13.9", "@eslint/js": "^9.17.0", "@istanbuljs/schema": "^0.1.3", "cypress": "^14.0.0", "eslint": "^9.17.0", "eslint-config-prettier": "^9.1.0", "eslint-import-resolver-typescript": "^3.7.0", "eslint-plugin-cypress": "^4.1.0", "eslint-plugin-import": "^2.31.0", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-react": "^7.37.2", "eslint-plugin-react-hooks": "^5.1.0", "globals": "^15.13.0", "husky": "^9.1.7", "lint-staged": "^15.2.11", "node-actionlint": "^1.2.2", "nyc": "^17.1.0", "prettier": "3.4.2", "stylelint": "^16.12.0", "stylelint-config-standard": "^36.0.1", "typescript-eslint": "^8.18.1" }, "dependencies": { "lodash": "^4.17.21", "moment": "^2.30.1" } }