{"analyzedAt":"2022-07-09T03:43:19.072Z","collected":{"metadata":{"name":"jxml-react","scope":"unscoped","version":"1.0.18","description":"Render react view from Yaml file","keywords":["react","yaml","yml","json","components","ui"],"date":"2021-09-02T15:59:29.630Z","author":{"name":"Joey.Etamity"},"publisher":{"username":"etamity","email":"etamity@gmail.com"},"maintainers":[{"username":"etamity","email":"etamity@gmail.com"}],"repository":{"type":"git","url":"git+https://github.com/etamity/jxml-react.git"},"links":{"npm":"https://www.npmjs.com/package/jxml-react","homepage":"https://etamity.github.io/jxml-react","repository":"https://github.com/etamity/jxml-react","bugs":"https://github.com/etamity/jxml-react/issues"},"license":"MIT","dependencies":{"esprima":"^4.0.1","js-yaml":"^4.1.0","react":"^17.0.2","yaml":"^1.10.2","yaml-loader":"^0.6.0"},"devDependencies":{"@babel/core":"^7.14.3","@babel/plugin-transform-runtime":"^7.14.3","@babel/preset-env":"^7.14.4","@babel/preset-react":"^7.13.13","@babel/register":"^7.13.16","@fortawesome/fontawesome-free":"5.15.3","@mapbox/rehype-prism":"^0.6.0","@material-ui/core":"^4.11.4","@mdx-js/loader":"^1.6.22","@mdx-js/runtime":"^1.6.22","@monaco-editor/react":"^4.1.3","@popperjs/core":"2.9.1","@rematch/core":"^2.0.1","@rematch/immer":"^2.0.1","@rematch/loading":"^2.0.1","@webpack-cli/generators":"^2.2.0","antd":"^4.16.2","autoprefixer":"^10.2.6","babel-loader":"^8.2.2","bootstrap":"^5.0.1","connected-react-router":"^6.9.1","copy-webpack-plugin":"^9.0.0","css-loader":"^5.2.6","history":"^4.10.1","html-webpack-plugin":"^5.3.1","immer":"^9.0.2","javascript-stringify":"^2.1.0","jest":"^27.0.4","loader-utils":"^2.0.0","lodash":"^4.17.21","microbundle":"^0.13.2","mini-css-extract-plugin":"^1.6.0","monaco-editor":"^0.24.0","postcss":"^8.3.0","postcss-import":"^14.0.2","postcss-loader":"^5.3.0","postcss-preset-env":"^6.7.0","prettier":"^2.3.1","ramda":"^0.27.1","raw-loader":"^4.0.2","react-content-loader":"^6.0.3","react-dom":"^17.0.2","react-redux":"^7.2.4","react-router":"^5.2.0","react-router-dom":"5.2.0","redux":"^4.1.0","remark-emoji":"^2.2.0","remark-frontmatter":"^3.0.0","remark-images":"^2.0.0","remark-mdx-frontmatter":"^1.0.1","sass":"^1.34.1","sass-loader":"^12.0.0","style-loader":"^2.0.0","styled-components":"^5.3.0","webpack":"^5.38.1","webpack-cli":"^4.7.2","webpack-dev-server":"^3.11.2","webpack-merge":"^5.8.0"},"peerDependencies":{"react":"*","react-dom":"*"},"releases":[{"from":"2022-06-09T00:00:00.000Z","to":"2022-07-09T00:00:00.000Z","count":0},{"from":"2022-04-10T00:00:00.000Z","to":"2022-07-09T00:00:00.000Z","count":1},{"from":"2022-01-10T00:00:00.000Z","to":"2022-07-09T00:00:00.000Z","count":1},{"from":"2021-07-09T00:00:00.000Z","to":"2022-07-09T00:00:00.000Z","count":2},{"from":"2020-07-09T00:00:00.000Z","to":"2022-07-09T00:00:00.000Z","count":21}],"hasTestScript":true,"hasSelectiveFiles":true,"readme":"# 🚀 JXML: Render components from Yaml file.\n\nJXML turns yaml file into JSX components.\n\n# Install:\n\n```\nnpm i jxml-react\n```\n\n## Add webpack config:\n\n```js\nmodule.exports = {\n  module: {\n    // ...\n\n    rules: [\n      // ...\n\n      {\n        test: /\\.jxml?$/,\n        use: ['babel-loader', 'jxml-react/loader'],\n      },\n    ],\n  },\n};\n```\n\n# Example:\n\nCreate a yaml file with extension `./example.jxml`\n\n```yaml\n---\nversion: 1.0\n\nstate:\n  pageTitle: Page title\n\nprops:\n  title: Default Button\n\nrender:\n  H1: this.state.pageTitle\n  Button:\n    style:\n      background: blue\n      color: white\n      padding: 10px\n    children: this.props.title\n    onClick: !!js |\n      () => {\n        this.setState(state=> {\n            state.pageTitle = 'Hello World!'\n        })\n      }\n```\n\nand then you can import this component to jsx file:\n\n```jsx\nimport Example from './Example.jxml';\n\nexport default () => <Example />;\n```\n\n# Runtime Render:\n\n```jsx\nimport { JXProvider } from 'jxml-react';\n\nexport default () => (\n  <JXProvider context={{ components: {}, scope: {}, thisContext: {} }}>\n    {`\n---\nversion: 1.0 \nrender: \n  Button: Default Button\n`}\n  </JXProvider>\n);\n```"},"npm":{"downloads":[{"from":"2022-07-08T00:00:00.000Z","to":"2022-07-09T00:00:00.000Z","count":0},{"from":"2022-07-02T00:00:00.000Z","to":"2022-07-09T00:00:00.000Z","count":5},{"from":"2022-06-09T00:00:00.000Z","to":"2022-07-09T00:00:00.000Z","count":53},{"from":"2022-04-10T00:00:00.000Z","to":"2022-07-09T00:00:00.000Z","count":176},{"from":"2022-01-10T00:00:00.000Z","to":"2022-07-09T00:00:00.000Z","count":307},{"from":"2021-07-09T00:00:00.000Z","to":"2022-07-09T00:00:00.000Z","count":793}],"starsCount":0},"github":{"homepage":"https://etamity.github.io/jxml-react/","starsCount":0,"forksCount":0,"subscribersCount":2,"issues":{"count":0,"openCount":0,"distribution":{"3600":0,"10800":0,"32400":0,"97200":0,"291600":0,"874800":0,"2624400":0,"7873200":0,"23619600":0,"70858800":0,"212576400":0},"isDisabled":false},"contributors":[{"username":"etamity","commitsCount":69}],"commits":[{"from":"2022-07-02T00:00:00.000Z","to":"2022-07-09T00:00:00.000Z","count":0},{"from":"2022-06-09T00:00:00.000Z","to":"2022-07-09T00:00:00.000Z","count":0},{"from":"2022-04-10T00:00:00.000Z","to":"2022-07-09T00:00:00.000Z","count":0},{"from":"2022-01-10T00:00:00.000Z","to":"2022-07-09T00:00:00.000Z","count":0},{"from":"2021-07-09T00:00:00.000Z","to":"2022-07-09T00:00:00.000Z","count":1}],"statuses":[{"context":"github/pages","state":"success"}]},"source":{"files":{"readmeSize":1168,"testsSize":317},"linters":["prettier"],"outdatedDependencies":{"yaml-loader":{"required":"^0.6.0","stable":"0.8.0","latest":"0.8.0"},"yaml":{"required":"^1.10.2","stable":"2.1.1","latest":"2.1.1"},"react":{"required":"^17.0.2","stable":"18.2.0","latest":"18.3.0-next-30eb267ab-20220708"}}}},"evaluation":{"quality":{"carefulness":0.9199999999999999,"tests":0.7255,"health":0.5,"branding":0.4},"popularity":{"communityInterest":3,"downloadsCount":58.666666666666664,"downloadsAcceleration":-0.2182458143074582,"dependentsCount":0},"maintenance":{"releasesFrequency":0.9,"commitsFrequency":0.9,"openIssues":0.9,"issuesDistribution":0.9}},"score":{"final":0.6275522770241673,"detail":{"quality":0.8924948054922976,"popularity":0.02808657899813375,"maintenance":0.9999243792203749}}}