1. Project Details
- Name: esg-score-ui
- Version: 1.5.0
- Node.js version: 16.14.2
2. Installation & Usage
Refer to the main README.md for prerequisites and setup:
yarn install
yarn start
3. Project Structure
├── amplify.yml
├── commitlint.config.js
├── lint-staged.config.js
├── package.json
├── prettier.config.js
├── public/
├── src/
├── tsconfig.json
└── yarn.lock
4. Public Directory
index.html
— HTML templatefavicon.ico
,manifest.json
,robots.txt
mockServiceWorker.js
— MSW service worker
5. Source Directory (src)
src/
├── App.tsx
├── index.tsx
├── assets/
├── common/
├── components/
├── containers/
├── context/
├── pages/
├── routes/
├── services/
├── util/
├── setupTests.ts
├── fonts.d.ts
├── global.d.ts
└── react-app-env.d.ts
6. Key Technologies & Dependencies
- React 17+, TypeScript
- MUI, Emotion
- Zustand, React Context, SWR
- Axios, AWS Amplify
- Formik, Yup
- Chart.js, react-chartjs-2
- React Router v6
- Jest, React Testing Library, MSW
- Storybook, Create React App, Webpack
- ESLint, Prettier, Husky, CommitLint, Standard Version
7. Scripts
Script | Description |
---|---|
start | Development server |
build | Production build |
test | Run tests |
test:ci | CI test mode |
test:coverage | Test coverage |
lint | ESLint |
prettier | Prettier formatting |
validate | Lint, format check, and type check |
release | Standard-version release |
storybook | Start Storybook |
build-storybook | Build Storybook static files |
8. Configuration & Tooling
tsconfig.json
— TypeScript config- ESLint +
@novatics-tools/eslint-config-react-typescript
prettier.config.js
commitlint.config.js
- Husky +
lint-staged.config.js
amplify.yml
— AWS Amplify pipeline
9. Testing
- Jest config in
package.json
src/setupTests.ts
- MSW (
mockServiceWorker.js
)
10. Storybook
- Runs on port 6006
- Stories alongside components (
*.stories.tsx
)
11. Deployment
- AWS Amplify configured via
amplify.yml
- Artifacts served from
build/
directory
12. Contributing
- Follow Conventional Commits
- Run
yarn validate
before PR - Use
yarn lint
andyarn prettier