{ "name": "dev.to", "version": "1.0.0", "description": "Where programmers share ideas and help each other grow", "engines": { "yarn": "1.22.18", "node": "20.x" }, "main": "index.js", "directories": { "doc": "docs", "lib": "lib", "test": "test" }, "resolutions": { "glob-parent": "^6.0.1" }, "scripts": { "prepare": "husky install", "generate-storybook-themes": "sass -q app/assets/stylesheets/themes:app/javascript/storybook-static/themes && bin/generate-css-utility-classes-docs.js", "build-storybook": "build-storybook -c app/javascript/.storybook -s app/assets -o app/javascript/storybook-static --quiet && yarn generate-storybook-themes", "prestorybook": "rm -rf app/javascript/storybook-static && yarn generate-storybook-themes", "storybook": "start-storybook -p 6006 -c app/javascript/.storybook -s app/assets,app/javascript/storybook-static", "lint:frontend": "eslint 'app/assets/javascripts/**/*.js' 'app/javascript/**/*.jsx' 'app/javascript/**/*.js' 'cypress/**/*.js'", "test": "jest app/javascript/ bin/ --coverage", "test:watch": "jest app/javascript/ bin/ --watch", "postcss": "postcss public/assets/*.css -d public/assets", "e2e": "bin/e2e", "e2e:creator-onboarding-seed": "yarn run e2e --creator-onboarding-seed", "build": "node esbuild.config.mjs" }, "nyc": { "report-dir": "coverage/cypress" }, "repository": { "type": "git", "url": "https://github.com/forem/forem.git" }, "author": "", "license": "AGPL-3.0-or-later", "bugs": { "url": "https://github.com/forem/forem/issues" }, "homepage": "https://github.com/forem/forem#readme", "devDependencies": { "@babel/eslint-parser": "^7.22.15", "@babel/plugin-proposal-decorators": "^7.23.3", "@cypress/code-coverage": "^3.12.36", "@etchteam/storybook-addon-css-variables-theme": "^1.6.0", "@faker-js/faker": "^7.6.0", "@knapsack-pro/cypress": "^7.4.0", "@storybook/addon-a11y": "^6.5.16", "@storybook/addon-actions": "^6.5.16", "@storybook/addon-backgrounds": "^6.5.16", "@storybook/addon-controls": "^6.5.16", "@storybook/addon-docs": "^6.5.16", "@storybook/addon-knobs": "^6.4.0", "@storybook/addon-storysource": "^6.5.16", "@storybook/addons": "^6.5.16", "@storybook/builder-webpack5": "^6.5.16", "@storybook/manager-webpack5": "^6.5.16", "@storybook/preact": "^6.5.16", "@testing-library/cypress": "^8.0.3", "@testing-library/dom": "^8.20.1", "@testing-library/jest-dom": "^5.17.0", "@testing-library/preact": "^2.0.1", "@testing-library/preact-hooks": "^1.1.0", "@testing-library/user-event": "^14.5.2", "@whitespace/storybook-addon-html": "^5.1.1", "babel-jest": "^28.1.3", "babel-loader": "^8.2.5", "css-loader": "^5.2.7", "cssom": "^0.5.0", "cypress": "^13.7.2", "cypress-failed-log": "^2.10.0", "cypress-file-upload": "^5.0.8", "cypress-multi-reporters": "^1.6.4", "cypress-pipe": "^2.0.0", "eslint": "^8.57.0", "eslint-config-preact": "^1.3.0", "eslint-config-prettier": "^8.10.0", "eslint-import-resolver-webpack": "^0.13.8", "eslint-plugin-babel": "^5.3.1", "eslint-plugin-cypress": "^2.15.2", "eslint-plugin-ignore-erb": "^0.1.1", "eslint-plugin-import": "^2.29.1", "eslint-plugin-jsx-a11y": "^6.7.1", "eslint-plugin-no-only-tests": "^3.1.0", "eslint-plugin-react": "^7.33.2", "husky": "^8.0.3", "isomorphic-fetch": "^3.0.0", "jest": "28.1.3", "jest-axe": "^6.0.0", "jest-environment-jsdom": "^28.1.3", "jest-fetch-mock": "^3.0.3", "jest-watch-typeahead": "^2.2.2", "jsdom": "^20.0.1", "lint-staged": "^13.3.0", "markdown-loader": "^7.0.0", "mocha-junit-reporter": "^2.2.1", "prettier": "^2.8.8", "sass": "1.54.0", "sass-loader": "^13.3.3", "storybook-addon-jsx": "^7.3.14", "style-loader": "^2.0.0", "svgo": "2.8.0" }, "dependencies": { "@babel/core": "^7.23.3", "@babel/plugin-proposal-class-properties": "^7.16.0", "@babel/plugin-proposal-export-default-from": "^7.23.3", "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-transform-private-methods": "^7.24.1", "@babel/plugin-transform-react-jsx": "^7.22.15", "@babel/preset-env": "^7.23.3", "@babel/preset-typescript": "^7.23.3", "@honeybadger-io/js": "^6.9.1", "@hotwired/stimulus": "3.2.2", "@rails/ujs": "7.1.3", "ahoy.js": "^0.4.4", "algoliasearch": "4.23.3", "autoprefixer": "^10.4.16", "babel-plugin-inline-react-svg": "^2.0.2", "babel-plugin-module-resolver": "^5.0.2", "babel-preset-preact": "^2.0.0", "canvas": "^2.11.0", "chart.js": "^3.9.1", "classnames": "^2.5.1", "core-js": "3", "esbuild": "^0.19.12", "esbuild-plugin-stimulus": "^0.1.5", "esbuild-plugin-svgr": "^2.1.0", "file-loader": "^6.2.0", "focus-trap": "^6.9.4", "focus-visible": "^5.2.0", "freezeframe": "^5.0.2", "he": "^1.2.0", "i18n-js": "^4.4.3", "intersection-observer": "^0.12.2", "jest-junit": "^16.0.0", "linkstate": "^2.0.1", "lodash.debounce": "4.0.8", "moment": "^2.29.4", "postcss": "^8.4.31", "postcss-cli": "^11.0.0", "postcss-flexbugs-fixes": "^5.0.2", "postcss-import": "^15.1.0", "postcss-preset-env": "^7.8.2", "postscribe": "^2.0.8", "preact": "^10.20.2", "prop-types": "^15.8.1", "rails-erb-loader": "^5.5.2", "react-colorful": "^5.6.1", "react-dates": "^21.8.0", "web-share-wrapper": "^0.2.2" }, "packageManager": "yarn@4.1.0" }