https://github.com/jsjzh/react-tiny-code
react-tiny-code
https://github.com/jsjzh/react-tiny-code
Last synced: 7 months ago
JSON representation
react-tiny-code
- Host: GitHub
- URL: https://github.com/jsjzh/react-tiny-code
- Owner: jsjzh
- Created: 2022-06-10T10:18:56.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2023-01-09T02:47:22.000Z (over 2 years ago)
- Last Synced: 2025-01-25T22:21:49.504Z (8 months ago)
- Language: TypeScript
- Size: 1.07 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# react-template-ts
## craco.config.js
```javascript
const { when, whenDev, whenProd, whenTest, ESLINT_MODES, POSTCSS_MODES } = require('@craco/craco');module.exports = {
reactScriptsVersion: 'react-scripts' /* (default value) */,
style: {
modules: {
localIdentName: '',
},
css: {
loaderOptions: {
/* Any css-loader configuration options: https://github.com/webpack-contrib/css-loader. */
},
loaderOptions: (cssLoaderOptions, { env, paths }) => {
return cssLoaderOptions;
},
},
sass: {
loaderOptions: {
/* Any sass-loader configuration options: https://github.com/webpack-contrib/sass-loader. */
},
loaderOptions: (sassLoaderOptions, { env, paths }) => {
return sassLoaderOptions;
},
},
postcss: {
mode: 'extends' /* (default value) */ || 'file',
plugins: [require('plugin-to-append')], // Additional plugins given in an array are appended to existing config.
plugins: (plugins) => [require('plugin-to-prepend')].concat(plugins), // Or you may use the function variant.
env: {
autoprefixer: {
/* Any autoprefixer options: https://github.com/postcss/autoprefixer#options */
},
stage: 3 /* Any valid stages: https://cssdb.org/#staging-process. */,
features: {
/* Any CSS features: https://preset-env.cssdb.org/features. */
},
},
loaderOptions: {
/* Any postcss-loader configuration options: https://github.com/postcss/postcss-loader. */
},
loaderOptions: (postcssLoaderOptions, { env, paths }) => {
return postcssLoaderOptions;
},
},
},
eslint: {
enable: true /* (default value) */,
mode: 'extends' /* (default value) */ || 'file',
configure: {
/* Any eslint configuration options: https://eslint.org/docs/user-guide/configuring */
},
configure: (eslintConfig, { env, paths }) => {
return eslintConfig;
},
pluginOptions: {
/* Any eslint plugin configuration options: https://github.com/webpack-contrib/eslint-webpack-plugin#options. */
},
pluginOptions: (eslintOptions, { env, paths }) => {
return eslintOptions;
},
},
babel: {
presets: [],
plugins: [],
loaderOptions: {
/* Any babel-loader configuration options: https://github.com/babel/babel-loader. */
},
loaderOptions: (babelLoaderOptions, { env, paths }) => {
return babelLoaderOptions;
},
},
typescript: {
enableTypeChecking: true /* (default value) */,
},
webpack: {
alias: {},
plugins: {
add: [] /* An array of plugins */,
add: [
plugin1,
[plugin2, 'append'],
[plugin3, 'prepend'] /* Specify if plugin should be appended or prepended */,
] /* An array of plugins */,
remove: [] /* An array of plugin constructor's names (i.e. "StyleLintPlugin", "ESLintWebpackPlugin" ) */,
},
configure: {
/* Any webpack configuration options: https://webpack.js.org/configuration */
},
configure: (webpackConfig, { env, paths }) => {
return webpackConfig;
},
},
jest: {
babel: {
addPresets: true /* (default value) */,
addPlugins: true /* (default value) */,
},
configure: {
/* Any Jest configuration options: https://jestjs.io/docs/en/configuration. */
},
configure: (jestConfig, { env, paths, resolve, rootDir }) => {
return jestConfig;
},
},
devServer: {
/* Any devServer configuration options: https://webpack.js.org/configuration/dev-server/#devserver. */
},
devServer: (devServerConfig, { env, paths, proxy, allowedHost }) => {
return devServerConfig;
},
plugins: [
{
plugin: {
overrideCracoConfig: ({ cracoConfig, pluginOptions, context: { env, paths } }) => {
return cracoConfig;
},
overrideWebpackConfig: ({ webpackConfig, cracoConfig, pluginOptions, context: { env, paths } }) => {
return webpackConfig;
},
overrideDevServerConfig: ({
devServerConfig,
cracoConfig,
pluginOptions,
context: { env, paths, proxy, allowedHost },
}) => {
return devServerConfig;
},
overrideJestConfig: ({ jestConfig, cracoConfig, pluginOptions, context: { env, paths, resolve, rootDir } }) => {
return jestConfig;
},
},
options: {},
},
],
};
```