Create React App Template - for SOHO
MIT License
This template only considers Client Side Rendering (CSR) and is a form of the most basic React technology considered by the creator rather than the latest trends.
Since Create React App (CRA) is no longer supported, modern React templates composed of Vite, Typescript, etc. are being worked on.
This template is recommended to be used in devcontainer to ensure the same operation on Linux / Windows / Mac.
This template has vulnerabilities in create-react-app, so if possible, use vite-template instead.
Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ |
> npx create-react-app my-app --template awesome-soho
src
├── assets // like svg
├── components // atomic design
│ ├── atoms
│ ├── molecules
│ ├── organisms
│ └── templates
├── config // project configuration
│ ├── i18n // i18next resource
│ │ ├── {lang} // ISO 639-1 Language Code [en,...,ko]
│ │ │ └── translation.json
│ ├── MenuItems.js
│ └── Router.js
├── context // React Context
│ └── {context name} // Context domain name
│ ├── components // Context related components
│ └── hooks // Context related hooks
├── features // Redux
│ └── {reducer name}
├── hooks // common hooks
├── lib // Library configuration
│ ├── components
│ └── {library name}Config.js
├── pages // Pages
│ ├── {domain}
│ │ ├── {page}
│ ├── {page}
│ │ ├── components // children for page
│ │ ├── {page}.jsx
│ │ ├── {page}.module.scss // module scss
└── utils // common utils
Enable(true) / Disable(false)
tsconfig.json
{
...
"checkJs": true,
...
}
Optionnal
If you want to apply or not apply type check to only some parts, check the guide below.
Using typescript
src/config/Router.js
src/config/Menu.js
yarn doc
doc
folder created
yarn type
type
folder created
Ant Design Default theme
The initial theme acts as the system's theme setting.
Ant Design Customize theme
To modify the Antd Theme, set the designToken according to the Ant Design Customize Theme guide.
src/lib/themeConfig.js
const themeConfig = {
themeName: getSystemCurrentTheme,
designToken: {
components: {
Layout: {
headerHeight: 64,
},
},
},
componentSize: "middle",
};
error `TS2307``: Cannot find module 'moduleA'
src/react-app-env.d.ts
Add the extension corresponding to the file.
declare module "*.png";
declare module "*.svg";
declare module "*.jpeg";
declare module "*.jpg";
declare module "*.scss";
declare module "*.sass";
Scheduled to be available in 1.1.0