Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
172 changes: 172 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,172 @@
![Image](https://github.com/user-attachments/assets/c187ba17-cd04-442c-92e4-4a9ca3579af0)
Comment thread
parkminjo marked this conversation as resolved.

<br>

## ๐Ÿฃ ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ

**์„ฑ์žฅํ˜• ์ทจ์—… ์ค€๋น„ ์„œ๋น„์Šค, Chick Mate**
<br><br>
Chick Mate์˜ ๋Œ€ํ‘œ ์บ๋ฆญํ„ฐ ์นฐ์นฐ์ด์™€ ํ•จ๊ป˜ AI ๋ฉด์ ‘๊ด€์„ ํ†ตํ•ด ๋ฉด์ ‘์„ ์—ฐ์Šตํ•˜๋Š” ์„ฑ์žฅํ˜• ๋ฉด์ ‘ ์ค€๋น„ ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.
๋ฉด์ ‘์„ ์ค€๋น„ํ•˜๋Š”๋ฐ ์–ด๋ ค์›€์„ ๊ฒช๋Š” ์ทจ์—…ยท์ด์ง ์ค€๋น„์ƒ์ด ๊ฐ์ž์— ๋งž๋Š” ์—ญ๋Ÿ‰์„ ํ‚ค์šธ ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ค๋‹ˆ๋‹ค.

> - **์ž‘์—… ๊ธฐ๊ฐ„** : 2025. 03. 20 ~ 2025. 04. 30
> - **๋ฐฐํฌ ์ฃผ์†Œ** : www.chickmate.site
Comment thread
parkminjo marked this conversation as resolved.

## ๐Ÿฅ ํ”„๋กœ์ ํŠธ ๋ฉค๋ฒ„ ์†Œ๊ฐœ

<table>
<tbody>
<tr>
<td align="center">
<a href="https://github.com/choichangyeon">
<img src="https://avatars.githubusercontent.com/u/53289569?v=4" width="80" alt="choichangyeon" /><br />
<sub><b>choichangyeon</b></sub>
</a>
</td>
<td align="center">
<a href="https://github.com/parkminjo">
<img src="https://avatars.githubusercontent.com/u/73922462?v=4" width="80" alt="parkminjo" /><br />
<sub><b>parkminjo</b></sub>
</a>
</td>
<td align="center">
<a href="https://github.com/hye410">
<img src="https://avatars.githubusercontent.com/u/110617039?v=4" width="80" alt="Hye10" /><br />
<sub><b>Hye10</b></sub>
</a>
</td>
</tr>
<tr>
<td width="300px" align="center">
<b>๋‹ด๋‹น</b><br />
AI ์„ ํƒ ํŽ˜์ด์ง€<br />
๋งž์ถค ์ฑ„์šฉ ๊ณต๊ณ  ํŽ˜์ด์ง€
</td>
<td width="300px" align="center">
<b>๋‹ด๋‹น</b><br />
AI ์ง„ํ–‰ ํŽ˜์ด์ง€<br />
์ž์†Œ์„œ ์ž‘์„ฑ ํŽ˜์ด์ง€
</td>
<td width="300px" align="center">
<b>๋‹ด๋‹น</b><br />
๋ Œ๋”ฉ/์˜จ๋ณด๋”ฉ ํŽ˜์ด์ง€<br />
๋งˆ์ดํŽ˜์ด์ง€ ๋ฉด์ ‘ ๊ธฐ๋ก ๋ฐ ํƒญ ๊ด€๋ฆฌ<br />
middleware ๊ด€๋ฆฌ
</td>
</tr>
<tr>
<td align="center">
<a href="https://github.com/ImJaeOne">
<img src="https://github.com/ImJaeOne.png" width="80" alt="ImJaeOne" /><br />
<sub><b>ImJaeOne</b></sub>
</a>
</td>
<td align="center">
<a href="https://github.com/minchulpack">
<img src="https://avatars.githubusercontent.com/u/195730631?v=4" width="80" alt="minchulpack" /><br />
<sub><b>minchulpack</b></sub>
</a>
</td>
</tr>
<tr>
<td width="300px" align="center">
<b>๋‹ด๋‹น</b><br />
๋กœ๊ทธ์ธ/ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€<br />
์บ๋ฆญํ„ฐ ๋ฐ ๊ฒฝํ—˜์น˜ ๊ด€๋ฆฌ<br />
๋งˆ์ดํŽ˜์ด์ง€ ๋ฉด์ ‘ ๊ธฐ๋ก<br />
</td>
<td width="300px" align="center">
<b>๋‹ด๋‹น</b><br />
์ „์ฒด UI ๋””์ž์ธ<br />
</td>
</tr>
</tbody>
</table>

<br />

## โš™ ํ”„๋กœ์ ํŠธ ๊ธฐ๋Šฅ ์†Œ๊ฐœ

- **Next.js ๊ธฐ๋ฐ˜์˜ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜**์ž…๋‹ˆ๋‹ค.
- **Zustand**๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž์˜ ์บ๋ฆญํ„ฐ ID์™€ ๋ชจ๋‹ฌ ID ์ƒํƒœ๋ฅผ ๋‹จ์ˆœํ•˜๊ณ  ์ง๊ด€์ ์œผ๋กœ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
- **TanStack Query**๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์œ ์ € ์ •๋ณด, ์บ๋ฆญํ„ฐ, ์ž์†Œ์„œ, ์ฒด์šฉ ๊ณต๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ๋น„๋™๊ธฐ์ ์œผ๋กœ ์š”์ฒญํ•˜๊ณ , ์บ์‹ฑ๊ณผ ์ฟผ๋ฆฌ ๋ฌดํšจํ™”๋ฅผ ํ†ตํ•ด ํ•ญ์ƒ ์ตœ์‹  ์ƒํƒœ๋กœ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.
- **Prisma**๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ **DB ์Šคํ‚ค๋งˆ๋ฅผ ์„ค๊ณ„**ํ•˜๊ณ , ์•ˆ์ •์ ์ธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ตฌ์กฐ๋ฅผ ๊ตฌ์ถ•ํ–ˆ์Šต๋‹ˆ๋‹ค.
- **Route Handler**๋ฅผ ์ด์šฉํ•˜์—ฌ RESTful API๋ฅผ ๊ตฌํ˜„ํ•˜์—ฌ, ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐ„์˜ ๋ฐ์ดํ„ฐ ํ†ต์‹ ์„ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
- **์ด๋ฉ”์ผ ํšŒ์›๊ฐ€์ž… ๋ฐ ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ**๊ณผ **๊ตฌ๊ธ€/์นด์นด์˜ค ๊ธฐ๋ฐ˜ ์†Œ์…œ ๋กœ๊ทธ์ธ**์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
- **ํšŒ์› ์ •๋ณด ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ**๋ฅผ ํ†ตํ•ด ์ •ํ™•ํ•œ ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
- **Tailwind CSS**๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ์„ ์ ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค.
- **Vercel**์„ ํ†ตํ•ด ํ”„๋กœ์ ํŠธ๋ฅผ ๋น ๋ฅด๊ณ  ์•ˆ์ •์ ์œผ๋กœ ๋ฐฐํฌํ•˜์˜€์Šต๋‹ˆ๋‹ค.

<br>

## ๐Ÿ”— ํ˜‘์—… ํ”„๋กœ์„ธ์Šค

- ### ํŽ˜์ด์ง€ ๋‹จ์œ„ ์ž‘์—… ๊ด€๋ฆฌ
- [๊ฐ ํŽ˜์ด์ง€๋ณ„ ์ด์Šˆ](https://github.com/BEST-L2CP/ChickMate/issues?q=is%3Aissue%20state%3Aclosed) ์ƒ์„ฑ
- ํŽ˜์ด์ง€๋ณ„ feature ๋ธŒ๋žœ์น˜ ์šด์˜ (`feat/#์ด์Šˆ๋ฒˆํ˜ธ-์ด์Šˆ๋ช…`, `refactor/#์ด์Šˆ๋ฒˆํ˜ธ-์ด์Šˆ๋ช…`)
- ### [Pull Request ํ…œํ”Œ๋ฆฟ์„ ํ™œ์šฉํ•œ ์ฝ”๋“œ ๋ฆฌ๋ทฐ](https://github.com/BEST-L2CP/ChickMate/pulls?q=is%3Apr+is%3Aclosed)

<br>

## ๐Ÿ—ฃ๏ธ ๊ธฐ์ˆ ์  ์˜์‚ฌ๊ฒฐ์ • ๊ณผ์ •

- #### [[Git] Git branch ์ „๋žต ์„ค์ •](https://chickmate.palms.blog/changyon99-1)
- #### [[ํด๋ผ์ด์–ธํŠธ ์ƒํƒœ ๊ด€๋ฆฌ] ํด๋ผ์ด์–ธํŠธ ์ƒํƒœ ๊ด€๋ฆฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ ํƒ ๊ณผ์ •](https://chickmate.palms.blog/minjo-1)
- #### [[TypeScript] type ๋ณ„์นญ vs interface ์–ด๋–ค ๊ฑธ ์“ธ๊นŒ์š”?](https://chickmate.palms.blog/dhye-1)
Comment thread
parkminjo marked this conversation as resolved.

<br>

## ๐Ÿš€ ํŠธ๋Ÿฌ๋ธ” ์ŠˆํŒ…

- #### [[์ผ๋ฐ˜ ๋กœ๊ทธ์ธ] ์ผ๋ฐ˜ ๋กœ๊ทธ์ธ ํ›„ ์„ธ์…˜์ด ๋ฐ”๋กœ ๋ฐ˜์˜๋˜์ง€ ์•Š์€ ์ด์œ ](https://chickmate.palms.blog/jaeone-5)
- #### [[์†Œ์…œ ๋กœ๊ทธ์ธ] ์†Œ์…œ ๋กœ๊ทธ์ธ๋งŒ ์•ˆ๋˜๋Š” ์ด์œ ?](https://chickmate.palms.blog/jaeone-1)
- #### [[API ํ†ต์‹ ] NextResponse.json()์—์„œ status๋ฅผ ์ œ๋Œ€๋กœ ๋ณด๋‚ด์ง€ ์•Š์œผ๋ฉด ์ƒ๊ธฐ๋Š” ์ผ](https://chickmate.palms.blog/jaeone-3)
- #### [[API ํ†ต์‹ ] RESTful API๋ž€?](https://chickmate.palms.blog/jaeone-7)
- #### [[ํด๋ผ์ด์–ธํŠธ ์ƒํƒœ ๊ด€๋ฆฌ] ๋ชจ๋‹ฌ์„ ์ „์—ญ ์ƒํƒœ๋กœ ๊ด€๋ฆฌํ–ˆ์„ ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ](https://chickmate.palms.blog/minjo-2)
- #### [[React Hook] React ์กฐ๊ฑด๋ถ€ Hook ํ˜ธ์ถœ](https://chickmate.palms.blog/changyon99-4)
- #### [[Tailwind CSS] tailwindcss + clsx ๋™์  ์Šคํƒ€์ผ์ด ์ ์šฉ๋˜์ง€ ์•Š์•„์š”](https://chickmate.palms.blog/dhye-2)
- #### [[Sentry] Sentry๋กœ ์˜ค๋ฅ˜ ์•Œ๋ฆผ์„ ๋ณด๋‚ด๊ธฐ ์œ„ํ•œ ์˜ฌ๋ฐ”๋ฅธ ๋ฐฉ๋ฒ•](https://chickmate.palms.blog/jaeone-4)

<br />

## ๐Ÿ“ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ

```markdown
๐Ÿ“ public // ์ •์  ํŒŒ์ผ ๊ด€๋ฆฌ
๐Ÿ“ src
โ”ฃ ๐Ÿ“ app // page, Route Handler์˜ ์—”๋“œ ํฌ์ธํŠธ๋ฅผ ๊ด€๋ฆฌ
โ”ฃ ๐Ÿ“ components // ์—ฌ๋Ÿฌ ํŽ˜์ด์ง€์—์„œ ๊ณตํ†ต์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์ปดํฌ๋„ŒํŠธ๋ฅผ ๊ด€๋ฆฌ
โ”ฃ ๐Ÿ“ constants // ์ž์ฃผ ๋ณ€ํ•˜์ง€ ์•Š๋Š” ์ƒ์ˆ˜๋ฅผ ๊ด€๋ฆฌ
โ”ฃ ๐Ÿ“ features // ๊ฐ ํŽ˜์ด์ง€ ๊ธฐ๋Šฅ๋ณ„ ๊ด€๋ฆฌ (api, hooks, utils, components ๋“ฑ ํฌํ•จ)
โ”ฃ ๐Ÿ“ hooks // ํŽ˜์ด์ง€ ๋‚ด๋ถ€์—์„œ ๊ณตํ†ต์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์ปค์Šคํ… ํ›…์„ ๊ด€๋ฆฌ
โ”ฃ ๐Ÿ“ lib // ๊ณต์šฉ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์ •, ์œ ํ‹ธ ํ•จ์ˆ˜
โ”ฃ ๐Ÿ“ provider // root์— ์ ์šฉํ•˜๋Š” Provider ๊ด€๋ฆฌ
โ”ฃ ๐Ÿ“ store // zustand stroe ๊ด€๋ฆฌ
โ”ฃ ๐Ÿ“ styles // css style ๊ด€๋ฆฌ
โ”ฃ ๐Ÿ“ types // type alias ๊ด€๋ฆฌ
โ”ฃ ๐Ÿ“ utils // ๊ณตํ†ต ์œ ํ‹ธ ํ•จ์ˆ˜ ๊ด€๋ฆฌ
โ”— middleware.ts
```

<br />

## ๐Ÿงถ ๊ธฐ์ˆ  ์Šคํƒ

<div align="left">

## Frontend

<img src="https://img.shields.io/badge/Next.js-000000?style=for-the-badge&logo=nextdotjs&logoColor=white" /> <img src="https://img.shields.io/badge/TypeScript-3178C6?style=for-the-badge&logo=typescript&logoColor=white" /> <img src="https://img.shields.io/badge/TanStack_Query-FF4154?style=for-the-badge&logo=reactquery&logoColor=white" /> <img src="https://img.shields.io/badge/Zustand-FFDD55?style=for-the-badge&logoColor=black" /> <img src="https://img.shields.io/badge/Tailwind_CSS-06B6D4?style=for-the-badge&logo=tailwindcss&logoColor=white" /> <br>

## Backend

<img src="https://img.shields.io/badge/PostgreSQL-4169E1?style=for-the-badge&logo=postgresql&logoColor=white" /> <img src="https://img.shields.io/badge/Amazon_RDS-527FFF?style=for-the-badge&logo=amazonaws&logoColor=white" /> <img src="https://img.shields.io/badge/Prisma-2D3748?style=for-the-badge&logo=prisma&logoColor=white" />


## Deployment

<img src="https://img.shields.io/badge/Vercel-000000?style=for-the-badge&logo=vercel&logoColor=white" /> <br>

## Collaboration

<img src="https://img.shields.io/badge/GitHub-181717?style=for-the-badge&logo=github&logoColor=white" /> <img src="https://img.shields.io/badge/Figma-F24E1E?style=for-the-badge&logo=figma&logoColor=white" /> <img src="https://img.shields.io/badge/Notion-000000?style=for-the-badge&logo=notion&logoColor=white" /> <img src="https://img.shields.io/badge/Slack-4A154B?style=for-the-badge&logo=slack&logoColor=white" /> </div>
Comment thread
ImJaeOne marked this conversation as resolved.