Skip to main content
Long Tran
💬
0 discussions

Client site

I. Functionality

  1. View User Manuals: Customers can access user manuals for registered products.
  2. Register Warranties: Customers can quickly register products for warranty coverage.

II. Packages

1. Dependencies

Package NameDescriptionLinkVersion
@tailwindcss/line-clampTailwind CSS plugin for line clamping@tailwindcss/line-clamp^0.4.4
axiosPromise based HTTP client for the browser and node.jsaxios^1.6.5
framer-motionA library for animations and gestures for Reactframer-motion^11.0.2
i18nextInternationalization-framework written in and for JavaScripti18next^23.10.1
reactA JavaScript library for building user interfacesreact^18.2.0
react-domServes as the entry point to the DOM and server renderers for Reactreact-dom^18.2.0
react-faviconReact component for favicon managementreact-favicon^2.0.3
react-i18nextInternationalization for React done rightreact-i18next^14.1.0
react-iconsSVG React icons of popular icon packs using ES6 importsreact-icons^5.0.1
react-modal-sheetAccessible bottom sheet modal for Reactreact-modal-sheet^2.2.0
react-playerA React component for playing a variety of URLs, including YouTubereact-player^2.14.1
react-router-domDOM bindings for React Routerreact-router-dom^6.21.3
react-toastifyReact notification libraryreact-toastify^10.0.5
tailwind-datepicker-reactReact date picker component styled with Tailwind CSStailwind-datepicker-react^1.4.3
usehooks-tsReact hook libraryusehooks-ts^2.10.0

2. Dev Dependencies

Package NameDescriptionLinkVersion
@types/reactTypeScript definitions for React@types/react^18.2.43
@types/react-domTypeScript definitions for React-DOM@types/react-dom^18.2.17
@vitejs/plugin-reactOfficial Vite plugin to handle React files@vitejs/plugin-react^4.2.1
autoprefixerPostCSS plugin to parse CSS and add vendor prefixesautoprefixer^10.4.17
eslintAn extensible linter for identifying and reporting on patterns in JavaScripteslint^8.55.0
eslint-plugin-reactReact specific linting rules for ESLinteslint-plugin-react^7.33.2
eslint-plugin-react-hooksESLint rules for React Hookseslint-plugin-react-hooks^4.6.0
eslint-plugin-react-refreshESLint plugin for React Refresheslint-plugin-react-refresh^0.4.5
postcssA tool for transforming CSS with JavaScript pluginspostcss^8.4.33
tailwindcssA utility-first CSS framework for rapid UI developmenttailwindcss^3.4.1
viteNext generation frontend toolingvite^5.0.8
vite-plugin-pwaZero-config PWA for Vitevite-plugin-pwa^0.17.4

III. Environment Variables

Variable NameDescriptionDefault Value
VITE_SERVER_URLAPI URL for the client sitehttp://localhost:3000
VITE_ASSET_URLURL for static assetshttp://localhost:3999/assets

IV. Source Tree

.
├── index.html - Main HTML file for the application.
├── package.json - File defining the project's dependencies, scripts, and metadata.
├── package-lock.json - Auto-generated file that locks the dependencies to specific versions.
├── postcss.config.js - PostCSS configuration file.
├── public/ - Directory containing static assets.
├── README.md - Project documentation.
├── src - Source code directory.
│ ├── App.css
│ ├── App.jsx - Main application component.
│ ├── assets - Directory containing images and other static assets.
│ │ ├── background3.png
│ │ ├── brother_logo.png
│ │ ├── brother_logo_w_100.png
│ │ ├── brother_logo_w.png
│ │ ├── react.svg
│ │ ├── us_flag.webp
│ │ └── vi_flag.png
│ ├── components - Directory containing React components.
│ │ ├── Datepicker.jsx
│ │ ├── Modals
│ │ │ └── index.jsx
│ │ ├── MoveableElement.jsx
│ │ └── WarrantyInfoSheet
│ │ └── index.jsx
│ ├── config - Configuration files for the application.
│ │ └── index.js
│ ├── constants - Directory containing constant values.
│ │ └── index.js
│ ├── context - Directory containing React context providers.
│ │ ├── AppProvider.jsx
│ │ ├── index.jsx
│ │ └── reducer.js
│ ├── examples - Directory containing example components.
│ │ └── index.js
│ ├── index.css
│ ├── layout - Directory containing layout components.
│ │ └── index.jsx
│ ├── main.jsx - Entry point for the application.
│ ├── pages - Directory containing React pages.
│ │ ├── Qr - Directory containing QR code related pages.
│ │ │ └── index.jsx
│ │ ├── Register - Directory containing registration related pages.
│ │ │ ├── index.jsx
│ │ │ ├── Loading.jsx
│ │ │ └── Stage2.jsx
│ │ ├── Result - Directory containing result related pages.
│ │ │ ├── CheckMark.jsx
│ │ │ ├── Cross.jsx
│ │ │ └── index.jsx
│ │ ├── SplashScreen - Directory containing splash screen related pages.
│ │ │ └── index.jsx
│ │ └── UserManual - Directory containing user manual related pages.
│ │ ├── Control.jsx
│ │ ├── Error.jsx
│ │ └── index.jsx
│ ├── service - Directory containing service functions.
│ │ └── index.js
│ └── utils - Directory containing utility functions.
│ ├── locale - Directory containing localization files.
│ │ ├── en.js
│ │ ├── index.js
│ │ └── vi.js
│ ├── statusTranslate.jsx
│ └── timeToDate.js
├── tailwind.config.js - Tailwind CSS configuration file.
├── vite.config.js - Vite configuration file.
└── yarn.lock - Auto-generated file that locks the dependencies to specific versions.

V. Data Flow Diagram

alt text