my-blog: 첫 화면 '완료된 프로젝트'를 '최근 프로젝트'로 변경
이번 커밋에서는 첫 화면에 표시되는 프로젝트 목록의 명칭과 로직을 변경하여 사용자 경험을 개선하고, 불필요한 의존성을 제거했습니다.
my-blog: 첫 화면 '완료된 프로젝트'를 '최근 프로젝트'로 변경
이번 커밋에서는 첫 화면에 표시되는 프로젝트 목록의 명칭과 로직을 변경하여 사용자 경험을 개선하고, 불필요한 의존성을 제거했습니다.
요약
이번 작업은 frontend/src/pages/index.astro 파일을 수정하여, 기존의 '완료된 프로젝트' 섹션을 '최근 프로젝트'로 변경하고 표시되는 프로젝트 수를 최신 3개로 제한하는 것을 목표로 했습니다. 이로써 kanban_status에 대한 의존성이 제거되었으며, 프로젝트의 생성 시점을 기준으로 최신 프로젝트를 효과적으로 보여줄 수 있게 되었습니다. 작업은 2026년 2월 3일에 진행되었습니다.
배경 및 목적
기존의 첫 화면에서는 '완료된 프로젝트'라는 명칭으로 프로젝트를 표시하고 있었습니다. 하지만 실제로 표시되는 프로젝트는 완료 여부와는 관계없이 단순히 목록에 있던 프로젝트들이었습니다. 이러한 명칭은 사용자에게 혼란을 줄 수 있으며, 프로젝트의 최신성을 직관적으로 파악하기 어렵다는 문제가 있었습니다.
따라서 이번 작업의 목적은 다음과 같습니다.
- 명칭 변경: '완료된 프로젝트'를 '최근 프로젝트'로 변경하여 의미를 명확하게 합니다.
- 로직 개선:
kanban_status에 대한 의존성을 제거하여 코드의 간결성을 높입니다. - 표시 개수 제한: 최신순으로 3개의 프로젝트만 표시하도록 하여 시각적인 집중도를 높이고 불필요한 정보 노출을 줄입니다.
구현 내용
주요 변경사항은 frontend/src/pages/index.astro 파일에서 발생했습니다.
- 변경된 파일 목록:
frontend/src/pages/index.astro
- 추가 라인 수: 9
- 삭제 라인 수: 12
핵심 코드 설명
(제공된 데이터에 변경_내용의 패치 diff가 비어있어, 실제 코드 변경에 대한 상세 설명은 제공할 수 없습니다. 다만, 커밋 메시지 내용을 바탕으로 추론한 내용은 다음과 같습니다.)
index.astro 파일에서는 프로젝트 목록을 가져오고 렌더링하는 로직이 수정되었을 것으로 예상됩니다.kanban_status를 기준으로 필터링하거나 정렬하는 부분이 제거되었을 것이며, 대신 created_at 또는 유사한 타임스탬프 필드를 사용하여 프로젝트를 최신순으로 정렬하고, slice(0, 3)과 같은 메서드를 사용하여 상위 3개의 프로젝트만 선택하여 화면에 표시하도록 변경되었을 것입니다.
기술적 의사결정
이번 작업에서는 kanban_status에 대한 의존성을 제거하는 것이 주요한 기술적 결정이었습니다.
- 선택:
kanban_status필터를 제거하고, 프로젝트 생성 시점을 나타내는created_at필드를 기준으로 정렬하는 방식을 선택했습니다. - 이유:
kanban_status는 프로젝트의 실제 상태를 나타내기보다는 시각적인 분류에 가까웠습니다. 이를 제거함으로써 코드의 복잡성을 줄이고, 프로젝트의 생성 시점이라는 보다 객관적인 기준으로 '최신'을 정의할 수 있었습니다. 또한,astro프레임워크에서 제공하는 기본 데이터 처리 기능을 활용하는 것이 더 간결하고 효율적이라고 판단했습니다. - 대안:
kanban_status를 유지하면서 '완료된 프로젝트'라는 명칭을 '최근 완료된 프로젝트' 등으로 변경하는 방안도 고려할 수 있었습니다. 하지만 이는 여전히kanban_status에 대한 의존성을 유지해야 했고, '최근'이라는 기준이 모호해질 수 있었습니다. - 장단점:
- 장점: 코드 간결성 증가,
kanban_status에 대한 의존성 제거, 프로젝트의 최신성이 명확해짐. - 단점: 만약
created_at필드가 존재하지 않거나 정확하지 않다면 다른 기준을 찾아야 함. (이번 커밋에서는created_at이 존재하고 활용 가능하다고 가정)
- 장점: 코드 간결성 증가,
배운 점 및 개선점
이번 작업을 통해 명칭과 실제 로직 간의 불일치가 사용자에게 줄 수 있는 혼란을 다시 한번 인지하게 되었습니다. 개발 초기에는 편의를 위해 사용했던 필터링 기준이 시간이 지나면서 의미를 잃거나 오해를 불러일으킬 수 있다는 점을 배웠습니다.
- 앞으로 개선할 점:
- 프로젝트의 상태를 관리하는 보다 명확하고 일관된 방식을 도입하여, '완료'와 같은 상태를 정확하게 반영하고 이를 사용자에게 투명하게 전달해야 합니다.
- UI에 표시되는 명칭은 항상 해당 로직과 완벽하게 일치하도록 지속적으로 검토해야 합니다.
- 다음 단계 계획:
- 현재
kanban_status를 사용하고 있는 다른 부분들도 함께 점검하여, 필요한 경우 로직을 개선하거나 제거할 예정입니다. - 프로젝트 목록의 필터링 및 정렬 옵션을 사용자에게 제공하여, 원하는 기준으로 프로젝트를 볼 수 있도록 하는 기능을 추가하는 것을 고려해볼 수 있습니다.
- 현재
참고 자료
- Claude AI 코드 세션: https://claude.ai/code/session_016HjTs6HAzVv7THQeaz8bnD