You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Establish a standardized architecture for components in the project to ensure consistency, maintainability, and scalability. This standard will include guidelines for file structure, CSS styling using BEM methodology, and best practices for component development. The goal is to create a uniform approach that can be easily followed by all team members.
Acceptance Criteria
File Structure:
Define a standard folder/file structure for components (e.g., each component should have its own folder containing .tsx, .css/.scss, and any additional assets like .types.ts or .constants.ts). Example:
Description
Establish a standardized architecture for components in the project to ensure consistency, maintainability, and scalability. This standard will include guidelines for file structure, CSS styling using BEM methodology, and best practices for component development. The goal is to create a uniform approach that can be easily followed by all team members.
Acceptance Criteria
File Structure:
Define a standard folder/file structure for components (e.g., each component should have its own folder containing .tsx, .css/.scss, and any additional assets like .types.ts or .constants.ts).
Example:
Styling with BEM:
All CSS classes should follow the BEM methodology.
Example:
Inline styles should be avoided. Use CSS modules or JSS where applicable.
Component Development Standards:
Documentation:
Implementation:
SAMPLE COMPONENT:
Button.tsx
A functional component written in TypeScript.
Button.module.scss
Styling using BEM methodology.
Button.types.ts
Define TypeScript types and props for the Button component.
Button.constants.ts [OPTIONAL]
Define constants for reuse (e.g., default values, variants, or labels).
Button.test.tsx
Unit tests for the Button component.
index.ts
Barrel file for easy imports.
Why This Component?
The text was updated successfully, but these errors were encountered: