diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index 7f0782c..5bedb04 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -31,7 +31,8 @@ The React application leverages a modern technology stack to ensure optimal perf - **HTTP Client**: Axios - **Styling**: TailwindCSS - **Component Library**: shadcn/ui -- **Font Awesome**: icons +- **Icons**: Font Awesome and Lucide +- **Fonts**: Fontsource - **Utility Library**: Lodash - **Date Library**: date-fns - **Unit Testing**: Vitest @@ -53,7 +54,7 @@ src useGetCurrentUser.ts # API hook for fetching current user useGetCurrentUser.test.ts # Unit test for useGetCurrentUser /components - /ui # shadcn/ui components + /shadcn # shadcn/ui components button.tsx # Reusable button component from shadcn/ui input.tsx # Reusable input component from shadcn/ui label.tsx # Reusable label component from shadcn/ui @@ -142,8 +143,8 @@ package.json # Project dependencies and scripts - Use **functional components** with hooks. - Use **TypeScript** for type safety. -- Return **JSX.Element** or **false** from components. - Use arrow functions for components. +- Return JSX or `null` from components. - Use the `data-testid` attribute to assist with testing. - Use default exports for components. - Use a **testId** prop for components that need to be tested, defaulting to the component name in kebab-case. @@ -157,6 +158,7 @@ package.json # Project dependencies and scripts - Use **Tailwind CSS** for styling. - Apply base styles in `src/index.css` - Use CSS variables for theming (index.css). +- Use class-variance-authority (CVA) for reusable component styles and variants, see: `src/common/utils/css.ts`. ### Configuration @@ -195,8 +197,9 @@ package.json # Project dependencies and scripts After installing shadcn/ui: -- Reusable UI components like `