The app uses absolute path with alias '@'
import App from '@/app/App' // import App.tsx file
Also, strict mode is included. In order to initially monitor the high quality of the code.
Requires Node.js v18+ to run.
Install the dependencies and devDependencies.
npm i
webpack-dev-server
npm run start
You can view the development server at localhost:3000
.
To make not minified compiled bundle with devs feature.
npm run build:dev
To make minified compiled bundle without devs feature.
npm run build:prod
ESLint
npm run lint:ts
npm run lint:ts:fix
Stylelint
npm run lint:scss
npm run lint:scss:fix
Prettier
npm run prettier
Unit test - Jest
npm run test:unit
npm run storybook # to start storybook
npm run storybook:build # to compile in static
webpack
- Module and asset bundler.webpack-cli
- Command line interface for webpackwebpack-dev-server
- Development server for webpack
@babel/core
- Transpile ES6+ to backwards compatible JavaScript@babel/preset-env
- Smart defaults for Babel@babel/preset-typescript
- Babel preset for TypeScript-
@babel/plugin-transform-typescript
- Includes in@babel/preset-typescript
-
@babel/plugin-transform-runtime
- A plugin that enables the re-use of Babel's injected helper code to save on codesize.
babel-loader
- Transpile files with Babel and webpacksass-loader
- Load SCSS and compile to CSSsass
- Node Sass
css-loader
- Resolve CSS importsstyle-loader
- Inject CSS into the DOM
html-webpack-plugin
- Generate HTML files from templatereact-refresh-webpack-plugin
- To enable "Fast Refresh" for React components.webpack-bundle-analyzer
- Visualize size of webpack output files with an interactive zoomable treemapmini-css-extract-plugin
- Extract CSS into separate files
prettier
- Formatting to support a consistent code styleeslint
- Enforce styleguide across applicationeslint-plugin-unused-imports
- Find and remove unused ES6 module importseslint-plugin-import
- Support linting of ES6+ import/export syntaxeslint-plugin-jsx-a11y
- Static AST checker for a11y rules on JSX elementseslint-plugin-promise
- Enforce best practices for JavaScript promiseseslint-plugin-react
- React-specific linting ruleseslint-plugin-react-hooks
- Enforces the Rules of Hookseslint-plugin-storybook
- Best practice rules for Storybook
This project is open source and available under the MIT License.