個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證발견부터 예약까지, 포기 없이
翻譯準備中
正在載入完整 README。 以下為已儲存的摘錄。
백지연 김충영 민경빈 송민서 황유림 자세한 기술 스택과 버전 기준은 Tech Stack을 따릅니다. 자세한 기준은 App Structure를 따릅니다. • 특정 route에서만 사용하는 코드는 pages/{pageName}에 둡니다. • 여러 페이지에서 재사용되는 도메인 기능은 features/{domain}으로 승격합니다. • 도메인 의미가 없는 공통 hook, util, component는 shared에 둡니다. • page끼리는 서로의 내부 파일을 직접 import하지 않습니다. • UI primitive는 packages/hds-ui, icon은 packages/hds-icons, token은 packages/hds-tokens에서 관리합니다.檢視完整 README ↗
발견부터 예약까지, 포기 없이
| Feature | Description |
|---|---|
| 홈 | 오늘의 식당, 하시픽, 인기 맛집, 매거진 등 주요 콘텐츠를 제공합니다. |
| 검색 | 키워드와 음식 장르, 정렬 필터를 통해 일본 맛집을 탐색할 수 있습니다. |
| 식당 상세 | 식당 정보, 메뉴, 리뷰, 매장 정보를 확인할 수 있습니다. |
| 오늘의 식당 | 랜덤 추천 식당을 확인하고 다시 추천받을 수 있습니다. |
| 예약 신청 | 식당 예약 정보를 입력하고 포인트 기반 수수료를 확인할 수 있습니다. |
| 내 예약 정보 | 진행 중, 방문 예정, 방문 완료, 예약 취소 상태별 예약을 확인할 수 있습니다. |
| 예약 상세 | 예약 정보 확인과 예약 취소를 지원합니다. |
| 리뷰 | 방문 완료 예약에 대해 리뷰를 작성하고, 작성한 리뷰를 관리할 수 있습니다. |
| 마이페이지 | 사용자 프로필, 보유 포인트, 마이 리뷰 정보를 확인할 수 있습니다. |
| 매거진 | 일본 맛집과 여행 관련 콘텐츠를 제공합니다. |
| PWA | 모바일 웹 환경에서 앱처럼 사용할 수 있도록 PWA를 지원합니다. |
자세한 기술 스택과 버전 기준은 Tech Stack을 따릅니다.
자세한 기준은 App Structure를 따릅니다.
| Folder | Responsibility |
|---|---|
app | 전역 Provider, Router, Layout 등 앱 실행 조립 코드 |
pages | route 단위 화면, 페이지 전용 UI와 상태 조합 |
features | 여러 페이지에서 재사용되는 도메인 기능 |
shared | 도메인과 무관하게 앱 내부에서 공유되는 공통 코드 |
test | 테스트 환경 설정과 공통 mock 유틸 |
| App | Package | Description |
|---|---|---|
apps/client | @hashi/client | 사용자 서비스 앱 |
apps/admin | @hashi/admin | 관리자 앱 |
packages/hds-ui | @hashi/hds-ui | 공통 UI 컴포넌트 패키지 |
packages/hds-icons | @hashi/hds-icons | 공통 아이콘 패키지 |
packages/hds-tokens | @hashi/hds-tokens | 디자인 토큰 패키지 |
| Target | Dev | Build | Preview |
|---|---|---|---|
| Client | pnpm dev:client | pnpm build:client | pnpm preview:client |
| Admin | pnpm dev:admin | pnpm build:admin | pnpm preview:admin |
| All | - | pnpm build | - |
기본 vercel.json은 client 배포용입니다. Admin은 별도 Vercel project에서 vercel.admin.json을 사용합니다.
GitHub Actions는 client와 admin 배포 workflow를 분리합니다. Admin workflow는
VERCEL_ADMIN_PROJECT_ID repository secret으로 Admin Vercel project를 선택하고,
vercel.admin.json을 명시적으로 사용합니다.
pnpm exec vercel build --local-config vercel.admin.json
pnpm exec vercel deploy --prebuilt --local-config vercel.admin.json
Admin 배포는 과거 admin.hashi.kr에 설치된 client PWA service worker를 제거하기 위해
apps/admin/public/sw.js를 같은 경로의 self-destroying worker로 유지합니다. 해당 파일은
기존 등록과 Cache Storage를 정리하므로 임의로 삭제하거나 이름을 변경하지 않습니다.
자세한 기준은 Coding Convention을 따릅니다.
자세한 기준은 Git Convention을 따릅니다.
HASHI Client는 Jira로 작업을 관리하고 GitHub로 코드 리뷰와 병합을 관리합니다.
develop 브랜치로 PR을 생성합니다.브랜치명은 다음 형식을 사용합니다.
type/HASHI-번호-작업-요약
예시는 다음과 같습니다.
feat/HASHI-12-login
fix/HASHI-18-button-style
docs/HASHI-30-convention-docs
커밋 메시지는 다음 형식을 사용합니다.
type(scope): HASHI-번호 작업 내용
예시는 다음과 같습니다.
feat(client): HASHI-12 로그인 페이지 구현
fix(hds-ui): HASHI-18 Button disabled 스타일 수정
docs(docs): HASHI-30 컨벤션 문서 추가
| Branch | Description |
|---|---|
main | 배포 가능한 브랜치 |
develop | 기능 브랜치들이 병합되는 개발 기준 브랜치 |
feat/* | 새로운 기능 개발 |
fix/* | 버그 수정 |
refactor/* | 기능 변화 없는 코드 구조 개선 |
style/* | UI 스타일, CSS, 포맷팅 수정 |
docs/* | 문서 작성 및 수정 |
test/* | 테스트 코드 및 테스트 환경 수정 |
chore/* | 빌드 설정, 패키지 관리, 기타 잡무 |
자세한 기준은 PR Checklist을 따릅니다.
develop입니다..github/pull_request_template.md를 기준으로 작성합니다.git status와 diff를 확인합니다.자세한 기준은 Package Management을 따릅니다.
pnpm을 사용합니다.npm, yarn, bun lockfile을 추가하지 않습니다.pnpm-workspace.yaml의 catalog에서 관리합니다.workspace:*를 사용합니다.package.json, pnpm-lock.yaml, 필요 시 pnpm-workspace.yaml을 함께 갱신합니다.자세한 기준은 Jira Ticket Guide을 따릅니다.
TODO, IN PROGRESS, CODE REVIEW, QA, DONE 흐름으로 관리합니다.IN PROGRESS로 이동합니다.CODE REVIEW 상태로 관리합니다.QA 상태로 관리합니다.DONE으로 정리합니다.HASHI는 AI와 함께 개발하기 위해 spec, convention, workflow, skill 문서를 함께 관리합니다.