diff --git a/.eslintrc b/.eslintrc
index 7bc6ab9333b..ba6ab1e1098 100644
--- a/.eslintrc
+++ b/.eslintrc
@@ -2,14 +2,21 @@
"root": true,
"extends": "next/core-web-vitals",
"parser": "@typescript-eslint/parser",
- "plugins": ["@typescript-eslint", "eslint-plugin-react-compiler", "local-rules"],
+ "plugins": [
+ "@typescript-eslint",
+ "eslint-plugin-react-compiler",
+ "local-rules",
+ "@html-eslint/eslint-plugin-react"
+ ],
"rules": {
"no-unused-vars": "off",
"@typescript-eslint/no-unused-vars": ["error", {"varsIgnorePattern": "^_"}],
"react-hooks/exhaustive-deps": "error",
"react/no-unknown-property": ["error", {"ignore": ["meta"]}],
"react-compiler/react-compiler": "error",
- "local-rules/lint-markdown-code-blocks": "error"
+ "local-rules/lint-markdown-code-blocks": "error",
+ "@html-eslint/react/no-duplicate-classname": ["error", {"callees": ["cn"]}],
+ "@html-eslint/react/classname-spacing": ["error", {"callees": ["cn"]}]
},
"env": {
"node": true,
diff --git a/package.json b/package.json
index 359f30d3e21..7a2b3c3440f 100644
--- a/package.json
+++ b/package.json
@@ -50,6 +50,7 @@
"@babel/core": "^7.12.9",
"@babel/plugin-transform-modules-commonjs": "^7.18.6",
"@babel/preset-react": "^7.18.6",
+ "@html-eslint/eslint-plugin-react": "^0.58.1",
"@mdx-js/mdx": "^2.1.3",
"@types/body-scroll-lock": "^2.6.1",
"@types/classnames": "^2.2.10",
diff --git a/src/components/Layout/HomeContent.js b/src/components/Layout/HomeContent.js
index f9b785db420..920a6624d28 100644
--- a/src/components/Layout/HomeContent.js
+++ b/src/components/Layout/HomeContent.js
@@ -43,7 +43,7 @@ function Section({children, background = null}) {
'mx-auto flex flex-col w-full',
background === null && 'max-w-7xl',
background === 'left-card' &&
- 'bg-gradient-left dark:bg-gradient-left-dark border-t border-primary/10 dark:border-primary-dark/10 ',
+ 'bg-gradient-left dark:bg-gradient-left-dark border-t border-primary/10 dark:border-primary-dark/10',
background === 'right-card' &&
'bg-gradient-right dark:bg-gradient-right-dark border-t border-primary/5 dark:border-primary-dark/5'
)}
@@ -793,7 +793,7 @@ const CommunityImages = memo(function CommunityImages({isLazy}) {
)}>
{isPulsing && shouldAnimatePulse && (
diff --git a/src/components/Layout/TopNav/TopNav.tsx b/src/components/Layout/TopNav/TopNav.tsx
index efc90ed2c76..2e5c23a3fb7 100644
--- a/src/components/Layout/TopNav/TopNav.tsx
+++ b/src/components/Layout/TopNav/TopNav.tsx
@@ -303,7 +303,7 @@ export default function TopNav({
+ className="flex py-2 flex-column justify-center items-center text-gray-50 dark:text-gray-30 hover:text-link hover:dark:text-link-dark hover:underline text-sm ms-1 cursor-pointer">
v{siteConfig.version}
@@ -344,7 +344,7 @@ export default function TopNav({
-
+