{ "name": "ohjelmoinnin-mooc", "engines": { "node": "16.x" }, "dependencies": { "@apollo/client": "^3.7.15", "@fortawesome/fontawesome-free": "^6.2.1", "@fortawesome/fontawesome-svg-core": "^6.2.1", "@fortawesome/free-brands-svg-icons": "^6.2.1", "@fortawesome/free-regular-svg-icons": "^6.2.1", "@fortawesome/free-solid-svg-icons": "^6.2.1", "@fortawesome/react-fontawesome": "^0.2.0", "@interactjs/offset": "^1.10.17", "@material-ui/core": "^4.12.4", "@material-ui/icons": "^4.11.3", "@material-ui/lab": "^4.0.0-alpha.61", "@monaco-editor/react": "^4.1.3", "@rstacruz/gatsby-remark-component": "^2.0.0", "apollo-boost": "^0.4.9", "axios": "^1.2.0", "babel-plugin-styled-components": "^1.12.0", "clsx": "^1.2.1", "code-states-visualizer": "^0.2.0", "color": "^4.2.3", "commonmark": "^0.30.0", "core-js": "^3.14.0", "fetch-ponyfill": "^7.1.0", "focus-visible": "^5.2.0", "gatsby": "^3.7.1", "gatsby-plugin-anchor-links": "^1.2.1", "gatsby-plugin-catch-links": "^3.7.1", "gatsby-plugin-i18next": "^1.1.10", "gatsby-plugin-manifest": "^3.7.1", "gatsby-plugin-material-ui": "^3.0.1", "gatsby-plugin-meta-redirect": "^1.1.1", "gatsby-plugin-react-helmet": "^4.7.1", "gatsby-plugin-sharp": "^3.7.1", "gatsby-plugin-sitemap": "^3.3.0", "gatsby-plugin-styled-components": "^4.7.1", "gatsby-remark-autolink-headers": "^4.4.1", "gatsby-remark-copy-linked-files": "^4.4.1", "gatsby-remark-emojis": "^0.4.3", "gatsby-remark-external-links": "0.0.4", "gatsby-remark-images": "^5.4.1", "gatsby-remark-prismjs": "^5.4.1", "gatsby-remark-smartypants": "^4.4.1", "gatsby-source-filesystem": "^3.7.1", "gatsby-transformer-remark": "^4.4.1", "graphql": "^15.8.0", "graphql-request": "^3.4.0", "i18next": "^20.3.1", "i18next-browser-languagedetector": "^6.1.1", "i18next-xhr-backend": "^3.2.2", "interactjs": "^1.10.17", "jquery": "^3.6.1", "js-base64": "^3.7.3", "jss": "^10.9.2", "jszip": "^3.6.0", "jszip-utils": "^0.1.0", "likert-react": "0.0.0-beta6", "luxon": "^1.27.0", "moment": "^2.29.1", "moocfi-python-editor": "^0.15.3", "moocfi-quizzes": "^0.9.10", "pdf-slideshow": "^0.1.4", "postcss": "^8.3.2", "prismjs": "^1.23.0", "react": "^17.0.2", "react-content-loader": "^6.2.0", "react-dom": "^17.0.2", "react-helmet": "^6.1.0", "react-i18next": "^11.10.0", "react-jss": "^10.9.2", "react-motion": "^0.5.2", "react-redux": "^7.2.4", "react-scrollspy": "^3.4.3", "react-toastify": "^7.0.4", "react-use": "^17.4.0", "react-youtube": "^7.13.1", "recharts": "^2.0.9", "reduce-reducers": "^1.0.4", "redux": "^4.2.0", "redux-action-analytics": "0.0.3", "redux-devtools-extension": "^2.13.9", "rehype-react": "^6.2.0", "store": "^2.0.12", "styled-components": "^5.3.6", "tmc-client-js": "0.0.9", "typeface-open-sans": "^1.1.13", "typeface-open-sans-condensed": "^1.1.13", "typeface-roboto-mono": "^1.1.13", "typeface-roboto-slab": "^1.1.13", "typesafe-actions": "^4.4.2", "typescript": "^4.9.3", "uuid": "^9.0.0", "visibilityjs": "^2.0.2" }, "keywords": [ "gatsby" ], "license": "Apache-2.0", "scripts": { "build": "gatsby build", "develop": "gatsby develop", "serve": "gatsby serve", "format": "prettier --write 'src/**/*.js'", "prettier-check": "prettier --list-different 'src/**/*.js'", "test": "echo \"Error: no test specified\" && exit 1", "upgrade-interactive": "npm-check --update", "now-dev": "gatsby develop -p $PORT", "now-build": "npm run build", "local-quizzes-package": "./use-local-quizzes.sh" }, "devDependencies": { "@babel/plugin-proposal-optional-chaining": "^7.14.5", "@babel/preset-env": "^7.14.5", "babel-preset-gatsby": "^1.7.1", "husky": "^4.3.8", "import-all.macro": "^3.1.0", "npm-check": "^5.9.2", "prettier": "^2.3.1" }, "husky": { "hooks": { "pre-commit": "./bin/check-code-style.sh" } } }