refactor: complete code simplification pass#9
Conversation
HIGH PRIORITY: - Fix PublicationCard class concatenation to use cn() consistently - Standardize interface Props declarations with export keyword - Add shared test fixtures for publications, patents, certifications, awards MEDIUM PRIORITY: - Extract ProjectData type from Astro content collection - Document scroll-reveal script pattern in CLAUDE.md LOW PRIORITY: - Review and remove custom line-clamp utilities (using Tailwind built-ins) - Document dual class composition approach (cn vs class:list) - Extract inline scripts to external files for deduplication Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Code Review - PR #9: refactor: complete code simplification passOverviewThis PR demonstrates excellent refactoring work focused on code organization, deduplication, and type safety. All tests pass (455 unit tests), and the changes align well with the project's high-quality standards. ✅ Strengths1. Script Extraction & Deduplication ⭐The extraction of inline scripts to external files (
Example: 2. Type Safety ImprovementsReplacing manual // src/utils/project-categories.ts:68
export type ProjectData = CollectionEntry<'projects'>['data'];This ensures the type stays synchronized with the content collection schema automatically. 3. Consistent Interface ExportsExporting 4. Test Fixture OrganizationThe new shared test fixtures ( 5. CSS SimplificationRemoving custom line-clamp utilities in favor of Tailwind v4 built-ins reduces maintenance burden and leverages framework capabilities.
|
refactor: complete code simplification pass
Summary
cn()consistentlyexport interface Propsdeclarations across 6 componentsTest plan
🤖 Generated with Claude Code