컬러 문화 사전·갤러리 반응형 웹
본 프로젝트의 요구사항(컬러 사전 검색, 나의 컬러 찾기 분기 위저드, 갤러리, 카테고리·태그 포스트)을 기반으로 직접 구현하는 프로젝트입니다.
프로젝트 개요
본 프로젝트의 요구사항(컬러 사전 검색, 나의 컬러 찾기 분기 위저드, 갤러리, 카테고리·태그 포스트)을 기반으로 직접 구현하는 프로젝트입니다. PC·태블릿·모바일에 대응하는 반응형 공개 사이트를 React + Node.js 기반으로 설계했습니다.
작업 범위
- 컬러 포스트 홈: 카테고리·태그로 분류된 컬러 문화 포스트를 편집형 그리드로 탐색하고, 전체 화면 폭에 맞춰 구성이 재배치되는 반응형 홈입니다
- 컬러 사전 검색: 단어나 키워드를 입력하면 해당 컬러 코드, 설명, 연관 자료를 한 화면에 보여주는 컬러 정보 사전 검색입니다
- 나의 컬러 찾기: 첫 질문의 선택지에 따라 두 번째 질문이 동적으로 바뀌는 2단계 분기 위저드로, 마지막에 나에게 맞는 컬러 결과 페이지를 보여줍니다
- 컬러 갤러리: 카테고리별로 분류된 컬러 이미지를 필터와 카드 그리드로 탐색하고, 카드를 선택하면 퀵뷰에서 큰 이미지와 정보를 확인하는 갤러리입니다
주요 업무
- 컬러 포스트 홈 화면: 카테고리·태그 필터와 카드 그리드를 중심으로 PC·태블릿·모바일 3개 구간 브레이크포인트에서 레이아웃이 재배치되도록 설계합니다
- 컬러 사전 검색 화면: PostgreSQL 전문 검색과 자동완성 API를 연결하고, 검색 결과 페이지에 컬러 견본·코드·연관 포스트를 묶어 표시하는 구조로 설계합니다
- 나의 컬러 찾기 화면: 질문·선택지·분기 규칙·결과를 데이터로 정의하고 위저드 엔진이 이를 해석하여 화면을 구성하는 데이터 주도 구조로 설계합니다
- 컬러 갤러리 화면: 필터 레일, 카드 그리드, 퀵뷰 드로어 3개 영역으로 구성하고 이미지 업로드는 S3 호환 스토리지 인터페이스로 분리하여 설계합니다




프로젝트 핵심 과제
한글 컬러명과 별칭·유사 표기(예
연한 분홍, 핑크)가 섞인 사전 검색에서 부분 일치와 오탈자를 함께 처리하는 검색 인덱스 설계 필요
질문·선택지가 바뀌어도 모든 분기 경로가 결과 페이지에 도달하
분기 그래프의 끊김과 순환을 검증하는 로직 설계 필요
색 견본이 화면 밝기와 이미지 압축에 따라 다르게 보이는 문제를 줄이기 위한 컬러 코드 표기와 이미지 처리 방식 설계
디자인 가이드 없이 시안만 있는 상태에서 30페이지 분량의 여백·타이포 값을 일관되게 추출하는 디자인 토큰 정리 방식 설계
핵심 기능 상세
컬러 포스트 홈
카테고리·태그로 분류된 컬러 문화 포스트를 편집형 그리드로 탐색하고, 전체 화면 폭에 맞춰 구성이 재배치되는 반응형 홈입니다.
- Tailwind CSS 브레이크포인트 3단계와 CSS Grid auto-fill 조합으로 카드 열 수를 화면 폭에 맞춰 자동 조정
- 카테고리·태그 필터 상태를 URL 쿼리와 동기화하여 필터 결과 링크 공유 구조 설계
- 이미지 lazy loading과 srcset 기반 해상도 분기로 이미지 로딩 부담을 줄이는 구조 적용
하나의 컴포넌트 트리로 PC·태블릿·모바일 화면을 모두 대응하는 반응형 구조를 설계하고, 시안 기준 여백·타이포 값을 디자인 토큰으로 분리합니다.


컬러 사전 검색
단어나 키워드를 입력하면 해당 컬러 코드, 설명, 연관 자료를 한 화면에 보여주는 컬러 정보 사전 검색입니다.
- PostgreSQL tsvector와 pg_trgm 인덱스를 조합하여 한글 부분 일치 검색과 오탈자 허용 검색을 구현
- Debounce 입력과 React Query 캐싱으로 자동완성 요청 횟수를 제어하는 검색창 설계
- 컬러 코드를 HEX·RGB·HSL 3가지 표기로 전환하고 클릭 한 번으로 복사하는 견본 카드 컴포넌트 구현
컬러명, 별칭, 설명, 연관 태그를 하나의 검색 문서로 합성하여 키워드 하나로 코드·설명·연관 자료가 함께 표시되는 사전 결과 구조를 설계합니다.


나의 컬러 찾기
첫 질문의 선택지에 따라 두 번째 질문이 동적으로 바뀌는 2단계 분기 위저드로, 마지막에 나에게 맞는 컬러 결과 페이지를 보여줍니다.
- 질문 노드와 선택지 간선을 JSON 그래프로 정의하고 선택 이력에 따라 다음 질문을 결정하는 분기 엔진 구현
- 첫 질문 선택지 4~7개를 카드형 토글로 구성하고 진행 단계 표시와 이전 단계 복귀를 지원하는 위저드 UI 설계
- 결과 페이지를 분기 경로 키로 조회하여 컬러 견본·설명·추천 포스트를 조합 표시
분기 규칙을 코드가 아닌 데이터로 보관하여, 질문과 선택지가 바뀌어도 위저드 엔진 수정 없이 동작하는 구조를 설계합니다.


컬러 갤러리
카테고리별로 분류된 컬러 이미지를 필터와 카드 그리드로 탐색하고, 카드를 선택하면 퀵뷰에서 큰 이미지와 정보를 확인하는 갤러리입니다.
- CSS 컬럼 기반 메이슨리 레이아웃과 Intersection Observer 무한 스크롤로 대량 이미지 목록 탐색 구현
- 퀵뷰 드로어에서 좌우 키보드 이동과 포커스 트랩을 지원하는 접근성 설계 적용
- 카테고리 필터 칩과 정렬 옵션을 URL 쿼리에 반영하여 갤러리 상태 공유 구조 설계
이미지 원본과 리사이즈 파생본을 분리 보관하는 스토리지 인터페이스를 설계하여, 저장소를 교체해도 갤러리 화면 코드가 바뀌지 않는 구조를 적용합니다.


프로젝트 진행 단계
시안 해석 및 디자인 토큰 정의 · 2026.10
시안 기준 여백·타이포·컬러 값을 추출하여 디자인 토큰으로 정의하고 반응형 구간 3단계 기준 확정
데이터 모델·검색 API 및 분기 위저드 엔진 · 2026.10
PostgreSQL 사전·태그·포스트 테이블과 전문 검색·자동완성 API, 질문·선택지 그래프 기반 2단계 분기 엔진을 설계하고 구현
반응형 퍼블리싱 및 갤러리 구현 · 2026.10
홈·포스트·갤러리 등 공개 화면 퍼블리싱, 필터 레일과 퀵뷰 드로어 구현
배포 구조 구성 및 이관 가능성 점검 · 2026.10
환경 변수 분리, Docker Compose 구성, 소스 전체 인수인계 가능한 문서 구조 정리
개발 결과
기술적 주안점
- 하나의 컴포넌트 트리로 PC·태블릿·모바일 화면을 모두 대응하는 반응형 구조를 설계하고, 시안 기준 여백·타이포 값을 디자인 토큰으로 분리합니다
- 컬러명, 별칭, 설명, 연관 태그를 하나의 검색 문서로 합성하여 키워드 하나로 코드·설명·연관 자료가 함께 표시되는 사전 결과 구조를 설계합니다
- 분기 규칙을 코드가 아닌 데이터로 보관하여, 질문과 선택지가 바뀌어도 위저드 엔진 수정 없이 동작하는 구조를 설계합니다