{"id":49820368,"url":"https://github.com/prgrms-fullcycle-devcourse/webfull_9_10_fixhub","last_synced_at":"2026-05-13T10:06:56.630Z","repository":{"id":353275267,"uuid":"1218708177","full_name":"prgrms-fullcycle-devcourse/webfull_9_10_FixHub","owner":"prgrms-fullcycle-devcourse","description":"프로그래머스 웹 풀스택 9기 10회차 FixHub 통합 레포지토리","archived":false,"fork":false,"pushed_at":"2026-05-11T04:59:37.000Z","size":915,"stargazers_count":3,"open_issues_count":23,"forks_count":0,"subscribers_count":0,"default_branch":"develop","last_synced_at":"2026-05-11T05:31:57.361Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://webfull-9-10-fix-hub-frontend.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/prgrms-fullcycle-devcourse.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-23T06:20:59.000Z","updated_at":"2026-05-11T04:59:30.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/prgrms-fullcycle-devcourse/webfull_9_10_FixHub","commit_stats":null,"previous_names":["prgrms-fullcycle-devcourse/webfull_9_10_fixhub"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/prgrms-fullcycle-devcourse/webfull_9_10_FixHub","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prgrms-fullcycle-devcourse%2Fwebfull_9_10_FixHub","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prgrms-fullcycle-devcourse%2Fwebfull_9_10_FixHub/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prgrms-fullcycle-devcourse%2Fwebfull_9_10_FixHub/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prgrms-fullcycle-devcourse%2Fwebfull_9_10_FixHub/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/prgrms-fullcycle-devcourse","download_url":"https://codeload.github.com/prgrms-fullcycle-devcourse/webfull_9_10_FixHub/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prgrms-fullcycle-devcourse%2Fwebfull_9_10_FixHub/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32977380,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-13T06:31:55.726Z","status":"ssl_error","status_checked_at":"2026-05-13T06:31:51.336Z","response_time":115,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-05-13T10:06:32.940Z","updated_at":"2026-05-13T10:06:56.625Z","avatar_url":"https://github.com/prgrms-fullcycle-devcourse.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# FixHub\n\n\u003e 팀 단위에서 이슈를 제기하고, 공유하고, 해결까지 관리할 수 있는 협업 플랫폼\n\n---\n\n## 🔗 링크 (Links)\n- **프론트**: https://webfull-9-10-fix-hub-frontend.vercel.app\n- **백엔드 api 문서**: https://webfull-9-10-fixhub.onrender.com/api-docs\n\n## 🛠 기술 스택 (Tech Stack)\n\n### **Frontend**\n\n| 영역             | 기술                         |\n| ---------------- | ---------------------------- |\n| Package Manager  | pnpm                         |\n| Language         | TypeScript                   |\n| Framework        | React (Vite)                 |\n| State Management | React Query, Zustand         |\n| Styling          | Tailwind CSS, shadcn/ui      |\n| API Client       | Axios, Orval                 |\n| Code Quality     | ESLint, Prettier, commitlint |\n| Deployment       | Vercel                       |\n| Design           | Figma                        |\n\n---\n\n### **Backend**\n\n| 영역            | 기술                         |\n| --------------- | ---------------------------- |\n| Package Manager | pnpm                         |\n| Language        | TypeScript                   |\n| Framework       | Express                      |\n| Database        | PostgreSQL                   |\n| ORM             | Prisma                       |\n| Backend Service | Supabase                     |\n| Validation      | Zod                          |\n| API Docs        | Swagger (zod-to-openapi)     |\n| Environment     | dotenv                       |\n| Code Quality    | ESLint, Prettier, commitlint |\n| Deployment      | Render                       |\n\n---\n\n### **Common**\n\n| 영역     | 기술      |\n| -------- | --------- |\n| Monorepo | Turborepo |\n\n---\n\n## 📂 폴더 구조 (Folder Structure)\n\n### 🖥️ Frontend\n\n```text\napps/frontend/\n├── public/           # 정적 파일\n└── src/\n    ├── api/          # API 요청 (axios, orval)\n    ├── assets/       # 이미지, 아이콘 등\n    ├── components/   # 공통 UI 컴포넌트\n    ├── hooks/        # 커스텀 훅\n    ├── pages/        # 페이지 단위 컴포넌트\n    ├── router/       # 라우팅 설정\n    ├── styles/       # 전역 스타일\n    ├── types/        # 타입 정의\n    └── utils/        # 유틸 함수\n```\n\n### ⚙️ Backend\n\n```text\napps/backend/\n├── prisma/           # DB 스키마 및 마이그레이션\n└── src/\n    ├── config/       # 환경 설정\n    ├── controllers/  # 요청 처리 (req/res)\n    ├── docs/         # Swagger 문서 설정\n    ├── middlewares/  # 미들웨어\n    ├── repositories/ # DB 접근 로직\n    ├── routes/       # 라우팅 정의\n    ├── services/     # 비즈니스 로직\n    ├── types/        # 타입 정의\n    ├── utils/        # 공통 유틸\n    └── validations/  # Zod 스키마\n```\n\n---\n\n## 📝 커밋 컨벤션 (Commit Convention)\n\n| 태그         | 설명                                               |\n| ------------ | -------------------------------------------------- |\n| **Feat**     | 새로운 기능 추가                                   |\n| **Fix**      | 버그 수정                                          |\n| **Design**   | UI 디자인 수정                                     |\n| **Test**     | 테스트 코드 및 테스트 관련 작업                    |\n| **Chore**    | 빌드 프로세스 및 환경 설정 변경                    |\n| **Refactor** | 코드 리팩토링 (구조 개선, 가독성 향상 등)          |\n| **Comment**  | 주석 추가 및 변경                                  |\n| **Rename**   | 파일/폴더명 수정 또는 이동                         |\n| **Remove**   | 파일 삭제                                          |\n| **Style**    | 코드 포맷 변경 (세미콜론, 공백 등, 로직 변경 없음) |\n| **Docs**     | 문서 수정                                          |\n| **Security** | 보안 취약점 수정 및 관련 변경                      |\n\n---\n\n## 🚀 로컬 실행 방법 (Getting Started)\n\n프로젝트를 로컬 환경에서 실행하고 테스트하는 방법입니다.\n\n### 1. 레포지토리 클론 및 폴더 이동\n\n```bash\ngit clone https://github.com/prgrms-fullcycle-devcourse/webfull_9_10_FixHub\n\ncd webfull_9_10_FixHub\n```\n\n### 2. 패키지 설치\n\n```bash\npnpm install\n```\n\n### 3. 환경 변수 설정\n\n프로젝트 최상위 경로에 `.env` 파일을 생성하고 `.env.example`을 참고하여 환경 변수를 채워주세요.\n\n### 4. 프로젝트 실행\n\n```bash\npnpm dev        # 개발 모드 실행\n\npnpm start      # 프로덕션 실행\n```\n\n---\n\n## 🧑‍💻 팀원 소개 (Team)\n\n| 프로필                                                        | 이름   | 역할      | GitHub                                             |\n| ------------------------------------------------------------- | ------ | --------- | -------------------------------------------------- |\n| \u003cimg src=\"https://github.com/aeri123443.png\" width=\"50\" /\u003e    | 정애리 | Fullstack | [@aeri123443](https://github.com/aeri123443)       |\n| \u003cimg src=\"https://github.com/kimbseong0814.png\" width=\"50\" /\u003e | 김병성 | Fullstack | [@kimbseong0814](https://github.com/kimbseong0814) |\n| \u003cimg src=\"https://github.com/lvyest.png\" width=\"50\" /\u003e        | 김가영 | Fullstack | [@lvyest](http://github.com/lvyest)                |\n| \u003cimg src=\"https://github.com/s576air.png\" width=\"50\" /\u003e       | 한재민 | Fullstack | [@s576air](https://github.com/s576air)             |\n| \u003cimg src=\"https://github.com/TeemoGB.png\" width=\"50\" /\u003e       | 정영호 | Fullstack | [@TeemoGB](https://github.com/TeemoGB)             |\n\n---\n\n## 문서\n\n- [Orval 가이드](./orval-usage.md): 배포된 OpenAPI URL 기준으로 API client와 TanStack Query 훅을 생성하는 방법\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprgrms-fullcycle-devcourse%2Fwebfull_9_10_fixhub","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprgrms-fullcycle-devcourse%2Fwebfull_9_10_fixhub","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprgrms-fullcycle-devcourse%2Fwebfull_9_10_fixhub/lists"}