Skip to content

Add React.memo to all section components for better performance

68e73a5
Select commit
Loading
Failed to load commit list.
Merged

Performance: Eliminate redundant animation loops and unnecessary re-renders #42

Add React.memo to all section components for better performance
68e73a5
Select commit
Loading
Failed to load commit list.
codefactor.io / CodeFactor failed Nov 4, 2025 in 6s

21 issues found.

Annotations

Check warning on line 28 in src/pages/discovery/index.tsx

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/pages/discovery/index.tsx#L28

Unexpected any. Specify a different type. (@typescript-eslint/no-explicit-any)

Check warning on line 6 in next.config.js

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

next.config.js#L6

'process' is not defined. (no-undef)

Check warning on line 20 in src/utils/markdown.ts

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/utils/markdown.ts#L20

'process' is not defined. (no-undef)

Check warning on line 7 in src/utils/rss.ts

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/utils/rss.ts#L7

'process' is not defined. (no-undef)

Check warning on line 34 in src/utils/markdown.ts

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/utils/markdown.ts#L34

Unexpected control character(s) in regular expression: \x00. (no-control-regex)

Check warning on line 22 in src/pages/discovery/[slug].tsx

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/pages/discovery/[slug].tsx#L22

Unexpected any. Specify a different type. (@typescript-eslint/no-explicit-any)

Check warning on line 181 in src/components/sections/Contact.tsx

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/components/sections/Contact.tsx#L181

`'` can be escaped with `'`, `‘`, `'`, `’`. (react/no-unescaped-entities)

Check notice on line 9 in src/pages/discovery/[slug].tsx

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/pages/discovery/[slug].tsx#L9

Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components. (react-refresh/only-export-components)

Check warning on line 94 in src/pages/discovery/[slug].tsx

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/pages/discovery/[slug].tsx#L94

Unexpected any. Specify a different type. (@typescript-eslint/no-explicit-any)

Check notice on line 15 in src/pages/discovery/[slug].tsx

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/pages/discovery/[slug].tsx#L15

Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components. (react-refresh/only-export-components)

Check warning on line 250 in src/components/sections/Projects.tsx

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/components/sections/Projects.tsx#L250

Unexpected any. Specify a different type. (@typescript-eslint/no-explicit-any)

Check warning on line 71 in src/utils/markdown.ts

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/utils/markdown.ts#L71

Unexpected any. Specify a different type. (@typescript-eslint/no-explicit-any)

Check warning on line 22 in src/pages/discovery/index.tsx

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/pages/discovery/index.tsx#L22

Unexpected any. Specify a different type. (@typescript-eslint/no-explicit-any)

Check warning on line 109 in src/utils/markdown.ts

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/utils/markdown.ts#L109

Unexpected any. Specify a different type. (@typescript-eslint/no-explicit-any)

Check notice on line 10 in src/pages/discovery/index.tsx

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/pages/discovery/index.tsx#L10

Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components. (react-refresh/only-export-components)

Check warning on line 36 in src/utils/rss.ts

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/utils/rss.ts#L36

'process' is not defined. (no-undef)

Check warning on line 5 in src/components/sections/Contact.tsx

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/components/sections/Contact.tsx#L5

'JSX' is not defined. (no-undef)

Check warning on line 194 in src/components/sections/Contact.tsx

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/components/sections/Contact.tsx#L194

`'` can be escaped with `'`, `‘`, `'`, `’`. (react/no-unescaped-entities)

Check warning on line 14 in src/components/discovery/DiscoveryList.tsx

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/components/discovery/DiscoveryList.tsx#L14

React Hook "useMemo" is called conditionally. React Hooks must be called in the exact same order in every component render. Did you accidentally call a React Hook after an early return? (react-hooks/rules-of-hooks)

Check warning on line 33 in src/pages/discovery/index.tsx

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/pages/discovery/index.tsx#L33

Unexpected any. Specify a different type. (@typescript-eslint/no-explicit-any)

Check warning on line 9 in src/components/sections/Experiences.tsx

See this annotation in the file changed.

@codefactor-io codefactor-io / CodeFactor

src/components/sections/Experiences.tsx#L9

'NodeJS' is not defined. (no-undef)