SCBJ-7 / SCBJ-FE

๋ฌด๋ฃŒ ์˜ˆ์•ฝ ์ทจ์†Œ ๋ถˆ๊ฐ€ํ•œ ์ˆ™์†Œ์˜ ์–‘๋„/๊ฑฐ๋ž˜ ํ”Œ๋žซํผ "์ˆ™์ทจ๋ฐฉ์ง€"
https://percenthotel.web.app/
3 stars 3 forks source link

transparent

์ˆ™์ทจ๋ฐฉ์ง€


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

๋ฌด๋ฃŒ ์˜ˆ์•ฝ ์ทจ์†Œ ๋ถˆ๊ฐ€ํ•œ ์ˆ™์†Œ์˜ ์–‘๋„/๊ฑฐ๋ž˜ ํ”Œ๋žซํผ "ํผ์„ผํŠธ ํ˜ธํ…”"

๊ฐ€๊ฒฉ ๊ฑฑ์ • ์—†์ด ํ•ฉ๋ฆฌ์ ์ธ ๊ฐ€๊ฒฉ์œผ๋กœ ๋“ํ…” ํ•˜์„ธ์š”!

์‚ฌ๊ธฐ๋งค๋ฌผ๊ณผ ๊ณผ๋„ํ•œ ๋ฆฌ์…€ ํ”„๋ฆฌ๋ฏธ์—„์œผ๋กœ ์ธํ•ด ์‹ ๋ขฐ๋„๊ฐ€ ๋‚ฎ์•˜๋˜ ์ˆ™์†Œ ์–‘๋„๊ฑฐ๋ž˜๋ฅผ ํ˜์‹ ํ•ฉ๋‹ˆ๋‹ค. ๊ตญ๋‚ด ์ตœ๋Œ€ ์ˆ™๋ฐ• ํ”Œ๋žซํผ ์•ผ๋†€์ž์—์„œ ์ธ์ฆ์ด ๋œ ์ƒํ’ˆ๋งŒ์„ ์ทจ๊ธ‰ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ๊ณผ๋„ํ•œ ํ”„๋ฆฌ๋ฏธ์—„ ๋งค๊ธฐ๊ธฐ๋‚˜ ํฅ์ •์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋„๋ก ๊ตฌ๋งค๊ฐ€๋ณด๋‹ค ๊ฐ€๊ฒฉ์„ ๋†’์ด์ง€ ๋ชปํ•˜๋„๋ก ์„ค์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ํผ์„ผํŠธํ˜ธํ…”์€ ํ”„๋ฆฌ๋ฏธ์—„ ๋ฆฌ์…€ ์‹œ์žฅ์„ ํƒ€๊ฒŸ์œผ๋กœ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํŒ๋งค์ž๋Š” ์ด์šฉํ•˜์ง€ ๋ชปํ•  ์ˆ™๋ฐ•์ƒํ’ˆ์„ ๋น ๋ฅด๊ฒŒ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๊ณ  ๊ตฌ๋งค์ž๋Š” ์•ผ๋†€์ž์—์„œ ๊ฒ€์ฆ๋œ ์ƒํ’ˆ์„ ์ €๋ ดํ•˜๊ฒŒ ๊ตฌ๋งคํ•  ์ˆ˜ ์žˆ๋Š” ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค.

๋ฐฐํฌ ๋งํฌ

๋ฐฐํฌ ์‚ฌ์ดํŠธ ๋ฐฐํฌ ๋ ˆํฌ

๊ด€๋ จ ๋งํฌ

wiki API figma

๐ŸŽฏ ๊ฐœ๋ฐœ ๊ธฐ๊ฐ„

2023.1.2 - 1.27

๐Ÿง‘๐Ÿปโ€๐Ÿ’ป ํŒ€ ์†Œ๊ฐœ ๋ฐ ์—ญํ• 

ํŒ€์› | ๋ฐ•๋‚˜์˜ ํŒ€์› | ์œค์„๋ฏผ ํŒ€์› | ์ด์˜์šฑ ํŒ€์žฅ | ์ •๋ฒ”ํ™˜ ํŒ€์› | ์ฑ„๋ฏผ์„
@im-na0 @dbstjrals @wowba @Bumang-Cyber @chaeminseok
  • ๊ฒฐ์ œ ํŽ˜์ด์ง€
  • ์นด์นด์˜ค ํŽ˜์ด API ๊ฒฐ์ œ ์ง„ํ–‰
  • ์ƒํ’ˆ ์ƒ์„ธ ํŽ˜์ด์ง€
  • ์•ผ๋†€์ž ์—ฐ๋™ ํŽ˜์ด์ง€
  • Errorboundary, router ๊ณ„์ธต ์„ค๊ณ„
  • ๋งˆ์ดํŽ˜์ด์ง€
  • ๊ณ„์ขŒ ๋“ฑ๋ก ํŽ˜์ด์ง€
  • ๊ธ€๋กœ๋ฒŒ ์Šคํƒ€์ผ ์„ค์ •
  • ์ดˆ๊ธฐ ํ”„๋กœ์ ํŠธ ์„ค์ •
  • ๋กœ๊ทธ์ธํŽ˜์ด์ง€
  • ํšŒ์›๊ฐ€์ž…ํŽ˜์ด์ง€
  • ๋ฉ”์ธํŽ˜์ด์ง€
  • ํŒ๋งค๊ธ€ ์ž‘์„ฑ ํŽ˜์ด์ง€
  • ์•Œ๋ฆผํŽ˜์ด์ง€ ๋ณด์กฐ
  • ํ—ค๋”, ๋ฐ”ํ…€ ๋„ค๋น„๊ฒŒ์ด์…˜ ๊ณตํ†ต ์ปดํฌ๋„ŒํŠธ
  • ์ „์—ญ์ƒํƒœ๊ด€๋ฆฌ ์„ธํŒ…
  • ์ธํ„ฐ๋ž™์…˜
  • ๊ฒ€์ƒ‰ํŽ˜์ด์ง€
  • ๊ฒ€์ƒ‰ํ•„ํ„ฐํŽ˜์ด์ง€
  • ๊ตฌ๋งค๋‚ด์—ญํŽ˜์ด์ง€
  • ๊ตฌ๋งค์ƒ์„ธํŽ˜์ด์ง€
  • ํŒ๋งค์ƒ์„ธํŽ˜์ด์ง€

๐Ÿ“ƒ ํ…Œ์ŠคํŠธ ์•„์ด๋”” / ๋น„๋ฐ€๋ฒˆํ˜ธ

ํ…Œ์ŠคํŠธ ์•„์ด๋””: calmness0729@gmail.com ๋น„๋ฐ€๋ฒˆํ˜ธ: wjdqjaghks0729!

๐Ÿ› ๏ธ ๊ธฐ์ˆ  ์Šคํƒ

์–ธ์–ด & ๊ฐœ๋ฐœํ™˜๊ฒฝ

React Vite TypeScript

๋น„๋™๊ธฐํ†ต์‹  ๋ฐ ์บ์‹ฑ

Axios React query

์ „์—ญ์ƒํƒœ ๊ด€๋ฆฌ

zustand

CSS ๋ฐ ์ธํ„ฐ๋ž™์…˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

Styled Components Framer

๋ฒ„์ „๊ด€๋ฆฌ ๋ฐ CI/CD

Git GitHub

์•Œ๋ฆผ ๋ฐ ๋ชจ๋ฐ”์ผ ๋Œ€์‘

FCM PWA

SEO ์ตœ์ ํ™”

ReactHelmet ReactSnap

ํ˜‘์—…

Discord Notion

โœ”๏ธ ์•ผ๋†€์ž RFP ๊ตฌํ˜„ ์‚ฌํ•ญ

๐ŸŽจ ํŽ˜์ด์ง€ ๋ณ„ ๋””์ž์ธ ๋ฐ ๊ธฐ๋Šฅ

๋ฉ”์ธํŽ˜์ด์ง€

2024-01-298 47 41-ezgif com-video-to-gif-converter

์ง€์—ญ๋ณ„ ํŠน๊ฐ€ ์ƒํ’ˆ๊ณผ ์ฃผ๋ง ํ˜ธ์บ‰์Šค ํŠน๊ฐ€์ƒํ’ˆ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์ฒด์ ์œผ๋กœ ๋งŒ๋“  ์บ๋กœ์…€์˜ props์— ์—ฐ๋™ํ•˜์—ฌ wrapper์— ์žˆ๋Š” ํ…์ŠคํŠธ ์• ๋‹ˆ๋ฉ”์ด์…˜์ด ์žฌ์ƒ๋˜๋ฉฐ 2์ดˆ๋งˆ๋‹ค ์ž๋™์œผ๋กœ ์„น์…˜ ์ „ํ™˜์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

ํŒ๋งค ์ƒํ’ˆ ์„ ํƒ ํŽ˜์ด์ง€

ํŒ๋งค๊ธ€ ์ž‘์„ฑ

ํŒ๋งคํ•  ์ƒํ’ˆ์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•ผ๋†€์ž ์ธ์ฆ์ด ๋œ ์ƒํ’ˆ๋งŒ์„ ์ทจ๊ธ‰ํ•˜๋Š” ์ •์ฑ…์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ๋น„๋กœ๊ทธ์ธ ์‹œ๋‚˜ ์•ผ๋†€์ž ์ธ์ฆ์ด ์•ˆ ๋œ ์ƒํƒœ์—์„œ๋Š” ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์—†๊ฒŒ ์˜ˆ์™ธ์ฒ˜๋ฆฌ๋ฅผ ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

ํŒ๋งค ์ƒํ’ˆ ๊ฐ€๊ฒฉ์„ค์ • ํŽ˜์ด์ง€ & ์„ฑ๊ณตํŽ˜์ด์ง€

2024-01-299 20 59-ezgif com-video-to-gif-converter ํŒ๋งคํ•  ์ƒํ’ˆ์˜ ๊ฐ€๊ฒฉ์„ ์„ค์ •ํ•˜๊ณ  2์ฐจ ํ• ์ธ ๊ฐ€๊ฒฉ, ์ •์‚ฐ ๊ณ„์ขŒ๊นŒ์ง€ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž…๋ ฅํ•ด์•ผ๋˜๋Š” ์ธํ’‹๊ณผ ์ •๋ณด๋Ÿ‰์ด ๋งŽ์•„, ๋‹จ๊ณ„๋ณ„๋กœ ๋ถˆํ•„์š”ํ•œ ์ •๋ณด๋Š” shrink๋˜๋Š” ์ธํ„ฐ๋ž™์…˜์„ ํ†ตํ•ด ์ž์—ฐ์Šค๋Ÿฌ์šด ์ž…๋ ฅ๊ณผ์ •์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

ํŒ๋งค ๊ฒŒ์‹œ๋ฌผ ์ž‘์„ฑ์„ ์ •์ƒ์ ์œผ๋กœ ๋งˆ์น˜๋ฉด ์„ฑ๊ณตํ™”๋ฉด์œผ๋กœ ์ „ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ํŒ๋งค๊ธ€ ์ž‘์„ฑํŽ˜์ด์ง€์—์„œ ์„ฑ๊ณตํŽ˜์ด์ง€๋กœ ์ „ํ™˜ํ• ๋•Œ ์ฒ˜์Œ ๋ณด๋Š” ๊ณ„์ขŒ๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•œ ๊ฒฝ์šฐ ์•ฝ๊ด€๋™์˜๋ฅผ ๋ฐ›๊ณ  ๊ธฐ๋ณธ ๊ณ„์ขŒ๋กœ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ๋Š” ํ”Œ๋กœ์šฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋•Œ useNavigate์˜ state์ „๋‹ฌ ๊ธฐ๋Šฅ์„ ํ†ตํ•˜์—ฌ ๋ฏผ๊ฐํ•œ ๊ณ„์ขŒ๋ฒˆํ˜ธ๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ์ „๋‹ฌ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค.

์•Œ๋ฆผํŽ˜์ด์ง€

์•Œ๋ฆผ์•„์ด์ฝ˜์— ๋ถˆ์ด ๋“ค์–ด์˜ค๋ฉด ์ƒˆ๋กœ์šด ์•Œ๋ฆผ์ด ์™”๋‹ค๋Š” ์‹ ํ˜ธ์ž…๋‹ˆ๋‹ค. ๋“ค์–ด๊ฐ€์„œ ์ •์‚ฐ ์•Œ๋ฆผ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ํŒ๋งค๊ฐ€ ์ด๋ฃจ์–ด์กŒ์„ ๋•Œ ํ‘ธ์‹œ์•Œ๋ฆผ์ด ์˜ต๋‹ˆ๋‹ค. ๋งค์ผ 12:00AM๋งˆ๋‹ค ๋‹น์ผ ํŒ๋งคํ•œ ์ƒํ’ˆ์˜ ์ •์‚ฐ์ด ์ด๋ฃจ์–ด์ง€๋ฉฐ ์•Œ๋ฆผ์ด ์˜ต๋‹ˆ๋‹ค. pwa๋ฅผ ํ†ตํ•ด ์•Œ๋ฆผ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ƒ์„ธํŽ˜์ด์ง€

๐Ÿ—‚๏ธ ํŒŒ์ผ ๊ตฌ์กฐ

๐Ÿ“‚ src
โ”ฃ ๐Ÿ“‚ api
โ”ฃ ๐Ÿ“‚ assets                   # ํฐํŠธ, ์ด๋ฏธ์ง€, ์•„์ด์ฝ˜
โ”ฃ ๐Ÿ“‚ constant                 # ์ƒ์ˆ˜
โ”ฃ ๐Ÿ“‚ mock                     # msw ๋”๋ฏธ ๋ฐ์ดํ„ฐ
โ”ฃ ๐Ÿ“‚ components               # ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ
โ”ƒ  โ”ฃ ๐Ÿ“‚ Modal
โ”ƒ  โ”ฃ ๐Ÿ“‚ SideBar
โ”ƒ  โ”ฃ ...
โ”ฃ ๐Ÿ“‚ constant
โ”ฃ ๐Ÿ“‚ contexts                 # ์†Œ์ผ“ ์ปจํƒ์ŠคํŠธ
โ”ƒ  โ”ฃ ChatSocketContext.tsx
โ”ƒ  โ”ฃ ...
โ”ฃ ๐Ÿ“‚ hooks                    # ์ปค์Šคํ…€ํ›…
โ”ฃ ๐Ÿ“‚ pages                    # ํŽ˜์ด์ง€ ์ปดํฌ๋„ŒํŠธ
โ”ƒ  โ”ฃ ๐Ÿ“‚ homePage
โ”ƒ  โ”ฃ ๐Ÿ“‚ alarmPage
โ”ƒ  โ”ฃ ๐Ÿ“‚ payment
โ”ƒ  โ”ƒ  โ”ฃ ๐Ÿ“‚ paymentButton      # ํŽ˜์ด์ง€ ๋‚ด ์ปดํฌ๋„ŒํŠธ ํด๋”
โ”ƒ  โ”ƒ  โ”ฃ Payment.style.ts
โ”ƒ  โ”ƒ  โ”ฃ Payment.tsx
โ”ƒ  โ”ฃ ...
โ”ฃ ๐Ÿ“‚ routes
โ”ฃ ๐Ÿ“‚ utils
โ”ฃ ๐Ÿ“‚ stores                   # ์ „์—ญ์ƒํƒœ
โ”ฃ ๐Ÿ“‚ styles                   # ์Šคํƒ€์ผํ…Œ๋งˆ
โ”ฃ ๐Ÿ“‚ types                    # ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ ๊ณต์šฉ ์ธํ„ฐํŽ˜์ด์Šค
โ”ฃ ๐Ÿ“‚ test                     # ํ…Œ์ŠคํŠธ ์ฝ”๋“œ
โ”ฃ App.tsx
โ”ฃ index.tsx

๐Ÿ“ ์ปจ๋ฒค์…˜

์ปค๋ฐ‹ ์ปจ๋ฒค์…˜
feat ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ถ”๊ฐ€
fix ๋ฒ„๊ทธ ์ˆ˜์ •
style ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ • (์„ธ๋ฏธ ์ฝœ๋ก , ์ธ๋ดํŠธ ๋“ฑ์˜ ์Šคํƒ€์ผ์ ์ธ ๋ถ€๋ถ„๋งŒ)
design css ๋“ฑ ๋””์ž์ธ ์ถ”๊ฐ€ ๋ฐ ์ˆ˜์ •
refactor ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง
comment ์ฃผ์„ ์ถ”๊ฐ€/์ˆ˜์ •
docs ๋‚ด๋ถ€ ๋ฌธ์„œ ์ถ”๊ฐ€/์ˆ˜์ •
test ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€/์ˆ˜์ •
chore ๋นŒ๋“œ ๊ด€๋ จ ์ฝ”๋“œ ์ˆ˜์ •
remove ํŒŒ์ผ ์‚ญ์ œ

๐Ÿ’ญ ๋Š๋‚€์  ๋ฐ ํšŒ๊ณ