phenomic
Version:
Modern website generator based on the React and Webpack ecosystem.
241 lines (240 loc) • 7.24 kB
JSON
{
"name": "phenomic",
"version": "0.21.3",
"description": "Modern website generator based on the React and Webpack ecosystem.",
"keywords": [
"webpack",
"react",
"ssg",
"static",
"file",
"site",
"website",
"blog",
"generator",
"markdown",
"jekyll",
"wintersmith",
"blacksmith",
"metalsmith",
"gatsby",
"gatsbyjs"
],
"author": "Maxime Thirouin",
"license": "MIT",
"homepage": "https://phenomic.io",
"repository": "https://github.com/MoOx/phenomic.git",
"main": "lib/index.js",
"files": [
"npm",
"lib",
"src",
"themes",
"docs/content",
"!**/__tests__"
],
"bin": {
"phenomic": "npm/bin.js"
},
"engines": {
"node": ">=4.2.0",
"npm": ">=3.0.0",
"yarn": ">=0.16.0 || >=1.0.0-0"
},
"dependencies": {
"babel-polyfill": "^6.5.0",
"babel-register": "^6.6.5",
"chalk": "^1.1.0",
"classnames": "^2.2.3",
"connect-history-api-fallback": "^1.2.0",
"express": "^4.13.3",
"find-cache-dir": "^0.1.1",
"fs-extra": "^0.26.4",
"fs-promise": "^0.3.1",
"globby": "^6.0.0",
"gray-matter": "^2.0.0",
"hard-source-webpack-plugin": "^0.3.8",
"inquirer": "^1.0.0",
"loader-utils": "^1.1.0",
"log-symbols": "^1.0.2",
"lru-memoize": "^1.0.1",
"mkdirp": "^0.5.1",
"multili": "^1.0.1",
"node-object-hash": "^1.0.2",
"offline-plugin": "^4.5.5",
"opn": "^4.0.2",
"ora": "^0.3.0",
"pify": "^2.3.0",
"portfinder": "^1.0.2",
"react-router-scroll": "^0.3.2",
"redbox-react": "^1.2.2",
"remark": "^5.0.0",
"remark-autolink-headings": "^4.0.0",
"remark-highlight.js": "^4.0.0",
"remark-html": "^5.0.0",
"remark-slug": "^4.1.0",
"remark-toc": "^3.1.0",
"rimraf": "^2.4.2",
"rss": "^1.2.0",
"semver": "^5.3.0",
"simple-json-fetch": "^1.0.1",
"sitemap": "^1.8.2",
"source-map-support": "^0.4.0",
"strip-markdown": "^0.3.1",
"url-join": "^1.1.0",
"valid-url": "^1.0.9",
"webpack-dev-middleware": "^1.10.1",
"webpack-hot-middleware": "^2.17.1",
"webpack-sources": "^0.2.3",
"yargs": "^4.3.1"
},
"devDependencies": {
"babel-cli": "^6.14.0",
"babel-core": "^6.14.0",
"babel-eslint": "^7.0.0",
"babel-jest": "^17.0.0",
"babel-plugin-flow-react-proptypes": "^0.10.1",
"babel-preset-env": "^1.3.2",
"babel-preset-react": "^6.23.0",
"babel-preset-stage-1": "^6.22.0",
"cmd-shim": "^2.0.2",
"coveralls": "^2.11.8",
"cp-cli": "^1.0.2",
"cross-env": "^2.0.0",
"eslint": "^3.7.1",
"eslint-config-i-am-meticulous": "^5.0.2",
"eslint-plugin-flow-vars": "^0.5.0",
"eslint-plugin-import": "^2.0.0",
"eslint-plugin-react": "^6.4.0",
"exec-cmd": "^2.0.1",
"expect": "^1.13.4",
"expect-jsx": "^2.2.1",
"flow-bin": "^0.38.0",
"jest": "^19.0.0",
"jest-ava-api": "^0.1.0",
"js-beautify": "^1.5.10",
"jsdom": "^9.2.0",
"lnfs": "^3.0.0",
"npm-run-all": "^3.0.0",
"npmpub": "^3.0.0",
"react": "^15.0.0",
"react-addons-test-utils": "^15.0.0",
"react-dom": "^15.0.0",
"react-helmet": "^3.0.0",
"react-redux": "^4.0.0",
"react-router": "^2.3.0",
"react-test-renderer": "^15.3.2",
"redux": "^3.0.0",
"stylelint": "^7.2.0",
"stylelint-config-standard": "^16.0.0",
"suppose": "^0.6.1",
"webpack": "^2.3.0"
},
"peerDependencies": {
"babel-cli": "^6.14.0",
"babel-core": "^6.14.0",
"extract-text-webpack-plugin": "^2.1.0",
"history": "^2.0.0",
"react": "^0.14.0 || ^15.0.0-rc.1",
"react-dom": "^0.14.0 || ^15.0.0-rc.1",
"react-helmet": "^3.0.0",
"react-redux": "^4.0.0",
"react-router": "^2.3.0",
"redux": "^3.0.0",
"webpack": "^2.3.0"
},
"scripts": {
"postinstall": "node npm/postinstall.js",
"transpile": "babel --ignore __tests__ --copy-files src --out-dir lib",
"prepublish": "rimraf lib && npm run transpile",
"#lint:js:eslint": "https://github.com/eslint/eslint/issues/5679",
"lint:js:eslint": "eslint --ignore-path .gitignore --fix src scripts npm __tests__",
"lint:js:flow": "flow check",
"lint:js": "npm-run-all --parallel lint:js:*",
"lint": "npm-run-all --parallel lint:*",
"tests": "cross-env TESTING=1 jest --runInBand --coverage src",
"e2e:tests": "jest --runInBand --forceExit e2e-tests",
"phenomic-theme-base-linting": "eslint --config package.json --ignore-path .gitignore --fix themes/phenomic-theme-base/scripts themes/phenomic-theme-base/src",
"phenomic-theme-base-start": "cd themes/phenomic-theme-base && npm start",
"test-setup": "cd test-setup && npm test",
"docs-linting": "eslint --ignore-path .gitignore --fix docs/scripts docs/src",
"pretest-docs": "npm run docs-linting",
"test-docs": "cd docs && npm test",
"docs-start": "cd docs && npm start",
"predocs-deploy": "cd docs && npm run showcase-screenshots",
"docs-deploy": "cd docs && npm run build && cd .. && npm run themes:prepare",
"postdocs-deploy": "cd docs && ./scripts/deploy.sh",
"themes:prepare": "cd themes/phenomic-theme-base && npm run build",
"postthemes:prepare": "cp-cli themes/phenomic-theme-base/dist docs/dist/themes/base/demo",
"pretest": "npm run transpile && npm run lint",
"test": "npm run tests && npm run phenomic-theme-base-linting && npm run test-setup && npm run e2e:tests",
"posttest": "npm run test-docs",
"coverage": "cat ./coverage/lcov.info | coveralls",
"cleanup": "rimraf yarn.lock docs/yarn.lock themes/phenomic-theme-base/yarn.lock node_modules docs/node_modules themes/phenomic-theme-base/node_modules test-setup",
"release": "npmpub",
"postrelease": "npm run docs-deploy"
},
"babel": {
"presets": [
"babel-preset-env",
"babel-preset-stage-1",
"babel-preset-react"
],
"plugins": [
"babel-plugin-flow-react-proptypes"
]
},
"eslintConfig": {
"root": true,
"parser": "babel-eslint",
"extends": [
"eslint-config-i-am-meticulous/react-flow"
],
"env": {
"jest": true
},
"rules": {
"import/max-dependencies": [
2,
{
"max": 20
}
],
"import/no-extraneous-dependencies": 0,
"import/no-unresolved": 0
}
},
"#eslintConfig/rules/import/no-extraneous-dependencies": "phenomic usage in theme is not specified in package.json (and can't be for now)",
"#eslintConfig/rules/import/no-unresolved": "deps in docs & theme are installed after the lint step",
"stylelint": {
"extends": "stylelint-config-standard",
"rules": {
"block-no-empty": null,
"comment-empty-line-before": null,
"comment-whitespace-inside": null,
"selector-pseudo-class-no-unknown": null
}
},
"jest": {
"testEnvironment": "node",
"notify": true,
"coverageThreshold": {
"global": {
"statements": 80,
"branches": 75,
"functions": 75,
"lines": 80
}
},
"transformIgnorePatterns": [
"node_modules"
],
"testPathIgnorePatterns": [
"/utils/",
"/fixtures/",
"/results/",
"/stub/",
"/_output/"
]
}
}