Files
lifeforge/client
Melvin Chia 17210c367a refactor(client): refactor components to use ItemWrapper for consistent styling and interactivity, adjust spacing in various places
Former-commit-id: 869b65a3d92079a87501a0fabb101d6377f0750f [formerly 8e129f2c2714e9a2e1cc6deb352253f189d6088c] [formerly 8263f55bc58c57fda38f234af75af6b227f415ca [formerly 77b06973e0495d28a8570f8ac992233f3b02a88d]]
Former-commit-id: bf508ff660cd8f6d85f67d54a7ec260ae3ff0342 [formerly 0f5ef762300bf29ad13315bc1ce8268bd275dcbc]
Former-commit-id: 864befc8f672d2405d00cbad62f3fd70c74c1b22
2025-09-05 09:57:06 +08:00
..
2025-07-17 16:22:37 +08:00
2025-08-01 00:11:35 +08:00
2025-07-19 00:10:10 +08:00
2025-07-28 23:37:06 +08:00

React + TypeScript + Vite

This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.

Currently, two official plugins are available:

Expanding the ESLint configuration

If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules:

export default tseslint.config({
  extends: [
    // Remove ...tseslint.configs.recommended and replace with this
    ...tseslint.configs.recommendedTypeChecked,
    // Alternatively, use this for stricter rules
    ...tseslint.configs.strictTypeChecked,
    // Optionally, add this for stylistic rules
    ...tseslint.configs.stylisticTypeChecked
  ],
  languageOptions: {
    // other options...
    parserOptions: {
      project: ['./tsconfig.node.json', './tsconfig.app.json'],
      tsconfigRootDir: import.meta.dirname
    }
  }
})

You can also install eslint-plugin-react-x and eslint-plugin-react-dom for React-specific lint rules:

// eslint.config.js
import reactDom from 'eslint-plugin-react-dom'
import reactX from 'eslint-plugin-react-x'

export default tseslint.config({
  plugins: {
    // Add the react-x and react-dom plugins
    'react-x': reactX,
    'react-dom': reactDom
  },
  rules: {
    // other rules...
    // Enable its recommended typescript rules
    ...reactX.configs['recommended-typescript'].rules,
    ...reactDom.configs.recommended.rules
  }
})