React CodeGen is a development tool to quickly generate React components.
It helps you to speed up productivity in React projects and stop copying, pasting files.
Get Started
·
Report Bug
·
Request Feature
To install the latest version run the following command:
npm i react-codegen-cli --save-dev
React CodeGen lets you setup everything by simply running the following command:
npx react-codegen-cli init
Question by question, it will guide you through the whole process of setting up a configuration file, selecting stylesheet format, picking a destination of generated files, and a lot more.
The following command can be used to generate code:
npm run react-codegen
After running the command in the terminal,
you can enter the name of the component and configure the generation of the files.
When creating a React component, you are given the choice to modify the component parts,
such as connecting the useState
, useEffect
, propTypes
and so on.
You also can set-up configuration file manually. React CodeGen uses cosmiconfig for configuration file support. This means you can configure it via:
- A
"react-codegen"
key in yourpackage.json
file. - A
.react-codegenrc
file, written in JSON or YAML, with optional extensions:.json/.yaml/.yml
(without extension takes precedence). - A
.react-codegenrc.js
orreact-codegen.config.js
file that exports an object.
react-codegen
will look for a configuration file in root folder and use it if available.
If no config file found it will fallback to a default configuration.
Type | Value | Default | Description |
---|---|---|---|
styles | string | scss | Stylesheet format |
typescript | boolean | false | Generate typescript files |
jsxExt | boolean | true | Use jsx extension for components |
newJsx | boolean | false | Remove react from scope (use new JSX transform) |
fileNameCase | came, pascal, snake, snakeUpper, kebab |
pascal | File name case for generated files (default: MyComponent.jsx ) |
path | string | src/components | Path to generate files |
wrapFolder | boolean | true | Create a wrap folder for generated files |
cssModules | boolean | false | Generate css module |
exportType | default, named |
default | Export type to be used for modules |
arrowFunction | boolean | true | Use arrow functions insead of regular |
Example:
{
"styles": "scss",
"typescript": false,
"jsxExt": true,
"fileNameCase": "pascal",
"path": "src/components"
}
See the open issues for a list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/amazing-feature dev
) - Commit your Changes (
npm run commit
) - Push to the Branch (
git push origin feature/amazing-feature
) - Open a Pull Request
React CodeGen CLI is open source software licensed as MIT.