์ค์๊ฐ ์ค์ผ์ค๋ง ๊ธฐ๋ฅ์ ๊ฐ์ถ ์จ๋ผ์ธ ํํฐ๋ง ๊ตฌ๋ ํ๋ซํผ
ํ ๊ต์ก ์คํํธ์ ์ ๊ตฌ๋ ๊ธฐ๋ฐ ์ก์ธ์ค๋ฅผ ํตํด ํ์๋ค๊ณผ ํํฐ๋ค์ ์ฐ๊ฒฐํ๊ณ , ์ค์๊ฐ ์ค์ผ์ค๋ง, ์๋ ๊ฒฐ์ , ์ํํ ์์ฝ ๊ฒฝํ์ ์ ๊ณตํ๋ ํ๋ซํผ์ด ํ์ํ์ต๋๋ค.
ํ๋ก์ ํธ ์๋ดํ๊ธฐ
๊ณผ์
์ ๋ขฐํ ์ ์๋ ํํฐ๋ง ๋ง์ผํ๋ ์ด์ค๋ฅผ ๊ตฌ์ถํ๋ ค๋ฉด ์ฌ๋ฌ ํตํฉ ๊ณผ์ ๋ฅผ ํด๊ฒฐํด์ผ ํ์ต๋๋ค:
- ์ค์ผ์ค๋ง ๋ณต์ก์ฑ โ ํํฐ์ ๊ฐ์ฉ์ฑ๊ณผ ํ์ ์์ฝ์ ์กฐ์ ํ๋ ค๋ฉด ์ค์๊ฐ ์บ๋ฆฐ๋ ๋๊ธฐํ๊ฐ ํ์ํ์ต๋๋ค
- ๊ฒฐ์ ํ๋ฆ โ ๊ตฌ๋ , ์ผํ์ฑ ๊ฒฐ์ , ํํฐ ์ ์ฐ ๊ด๋ฆฌ๋ฅผ ๋จ์ผ ๊ฒฐ์ ์์คํ ์ ํตํด ์ฒ๋ฆฌ
- ์ธ์ฆ โ ํ์, ํํฐ, ๊ด๋ฆฌ์๋ฅผ ์ํ ๋ณด์ ๋ค์ค ์ญํ ์ก์ธ์ค
- ์์ ์ ๋ขฐ์ฑ โ ๋ณต์กํ ์์ฝ ๋ฐ ์จ๋ณด๋ฉ ์์์ ์ค๋ฅ๋ฅผ ๋ฐฉ์งํ๊ณ ๋ฐ์ดํฐ ํ์ง์ ๋ณด์ฅํ๊ธฐ ์ํด ๊ฐ๋ ฅํ ์ ํจ์ฑ ๊ฒ์ฌ๊ฐ ํ์ํ์ต๋๋ค
- ์ค์๊ฐ ์ ๋ฐ์ดํธ โ ํ์๊ณผ ํํฐ๋ ์์ฝ ๋ณ๊ฒฝ ๋ฐ ํ๋ซํผ ์ด๋ฒคํธ์ ๋ํ ์ฆ๊ฐ์ ์ธ ํผ๋๋ฐฑ์ด ํ์ํ์ต๋๋ค
์ฐ๋ฆฌ์ ์๋ฃจ์
์ ํฌ๋ ์ธ์ฆ ๋ฐ ์ค์๊ฐ ๋ฐ์ดํฐ์ฉ Supabase, ๊ตฌ๋ ๊ฒฐ์ ๋ฐ ํํฐ ์ ์ฐ์ฉ Stripe, ์ค์ผ์ค๋ง์ฉ Calendly๋ฅผ ์ฌ์ฉํ์ฌ ํ์คํ ํํฐ๋ง ํ๋ซํผ์ ๊ตฌ์ถํ์ผ๋ฉฐ, ์ด ๋ชจ๋ ๊ฒ์ ์ต์ React/TypeScript ํ๋ฐํธ์๋์ ํตํฉ๋์์ต๋๋ค.
์ํคํ ์ฒ
- ํ๋ฐํธ์๋: TypeScript, TailwindCSS, Shadcn/UI ์ปดํฌ๋ํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ React
- ๋น๋ ๋๊ตฌ: ๋น ๋ฅธ ๊ฐ๋ฐ ๋ฐ ์ต์ ํ๋ ํ๋ก๋์ ๋น๋๋ฅผ ์ํ Vite
- ๋ฐฑ์๋: ์์ฝ, ๊ฒฐ์ ๋ฐ ์จ๋ณด๋ฉ์ ์ฒ๋ฆฌํ๋ ๋ณด์ API ์๋ํฌ์ธํธ๋ฅผ ์ํ Supabase Edge Functions
- ๋ฐ์ดํฐ๋ฒ ์ด์ค: ์ค์๊ฐ ์ ๋ฐ์ดํธ๋ฅผ ์ํ ์ค์๊ฐ ๊ตฌ๋ ๊ธฐ๋ฅ์ ๊ฐ์ถ Supabase (PostgreSQL)
- ์ธ์ฆ: ์ญํ ๊ธฐ๋ฐ ์ก์ธ์ค๋ฅผ ์ ๊ณตํ๋ Supabase Auth
- ์ค์ผ์ค๋ง: ์ค์๊ฐ ์์ฝ ๋๊ธฐํ๋ฅผ ์ํ Calendly ํตํฉ
- ๊ฒฐ์ : ๊ตฌ๋ , ์ผํ์ฑ ๊ฒฐ์ ๋ฐ ํํฐ ์ ์ฐ์ ์ํ Stripe
- ์ํ ๊ด๋ฆฌ: ๊ธ๋ก๋ฒ ์ํ ๊ด๋ฆฌ๋ฅผ ์ํ Redux Toolkit, ์๋ฒ ์ํ ๊ด๋ฆฌ๋ฅผ ์ํ React Query
- ์์ ์ ํจ์ฑ ๊ฒ์ฌ: Zod ์คํค๋ง ์ ํจ์ฑ ๊ฒ์ฌ๋ฅผ ์ฌ์ฉํ๋ React Hook Form
- ์ ๋๋ฉ์ด์ : ์ ํ, ๋ก๋ ๋ฐ ๋ชจ๋ฌ์ ์ํ Framer Motion
์ฃผ์ ๊ธฐ๋ฅ
- ๊ตฌ๋ ์์คํ โ ๋ฐ๋ณต ๊ฒฐ์ ๋ฐ ๋ฌด๋ฃ ๋ฑ๊ธ์ ์ง์ํ๋ Stripe ๊ธฐ๋ฐ ์๊ธ์
- ์ค์๊ฐ ์ค์ผ์ค๋ง โ ํ์๊ณผ ํํฐ ๊ฐ์ ์์ฝ ๋๊ธฐํ๋ฅผ ์ํ Calendly ํตํฉ
- Supabase Edge Functions โ ์์ฝ, ๊ฒฐ์ ๋ฐ ์จ๋ณด๋ฉ ๋ก์ง ์ฒ๋ฆฌ์ฉ ์๋ฒ๋ฆฌ์ค API ์๋ํฌ์ธํธ
- ์์ ์ ํจ์ฑ ๊ฒ์ฌ โ ์ ์ถ ์ค๋ฅ๋ฅผ ๋ฐฉ์งํ๋ Zod ์คํค๋ง๋ฅผ ์ฌ์ฉํ๋ React Hook Form
- ํํฐ ์ ์ฐ โ Stripe Connect๋ฅผ ํตํ ์๋ ์ ์ฐ ์ฒ๋ฆฌ
- ์ค์๊ฐ ์ ๋ฐ์ดํธ โ ์ฆ๊ฐ์ ์ธ ์์ฝ ๋ฐ ์ํ ๋ณ๊ฒฝ์ ์ํ Supabase ์ค์๊ฐ ๊ตฌ๋
- ๋ฐ์ํ ๋์์ธ โ Framer Motion ์ ๋๋ฉ์ด์ ๋ฐ ์ ๊ทผ์ฑ ์๋ ๋ชจ๋ฌ์ ๊ฐ์ถ ๋ชจ๋ฐ์ผ ์นํ์ ์ธ UI
- ์๋ ๋ฐฐํฌ โ ์์ ์ ์ด๊ณ ์ผ๊ด๋ ๋ฆด๋ฆฌ์ค๋ฅผ ์ํ CI/CD ํ์ดํ๋ผ์ธ
๊ฒฐ๊ณผ
๊ธฐ์ ์คํ
caseStudyDetail.more ์ฌ๋ก ์ฐ๊ตฌ
๋ ๋ง์ ๊ธฐ์ ๊ตฌํ ์ฌ๋ก๋ฅผ ์ดํด๋ณด์ธ์
๋ค์ค ํ๋ซํผ ์ฝํ ์ธ ๋ฐ ๊ตฌ๋ ๊ด๋ฆฌ ์์คํ
์ฝํ ์ธ /๊ตฌ๋ ์๋น์ค ์ ๊ณต์ ์ฒด๋ ์ฌ์ฉ์ ์ธ์ฆ, ์ฝํ ์ธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฐ ๊ตฌ๋ ์๋ช ์ฃผ๊ธฐ๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํด ๋ชจ๋ฐ์ผ, ์น ๊ด๋ฆฌ์ ๋ฐ ๋ฐฑ์๋๋ฅผ ์์ฐ๋ฅด๋ ์์ ํ ํ๋ซํผ์ด ํ์ํ์ต๋๋ค.
OCR ๋ฐ QuickBooks ์ฐ๋์ ํตํ AI ๊ธฐ๋ฐ ์ก์ฅ ์ฒ๋ฆฌ
๋งค์ ์๋ฐฑ ๊ฑด์ ๊ณต๊ธ์ ์ฒด ์ก์ฅ์ ์ฒ๋ฆฌํ๋ ์ค๊ฒฌ ๊ธฐ์ ์ AI/OCR์ ์ฌ์ฉํ์ฌ ์ก์ฅ ๋ฐ์ดํฐ๋ฅผ ์๋์ผ๋ก ์ถ์ถํ๊ณ ์ด๋ฅผ QuickBooks์ ์ง์ ๋๊ธฐํํ์ฌ ์ฅ๋ถ ์ ๋ฆฌ ๋ฐ ์ง๊ธ ์ถ์ ์ ํจ์ผ๋ก์จ ์๋ ๋ฐ์ดํฐ ์ ๋ ฅ์ ์์ ์ผ ํ์ต๋๋ค.
์์ฃผ ๋ฌป๋ ์ง๋ฌธ
MicrocosmWorks๋ IANA ์๊ฐ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ์ฉํ์ฌ ๋ชจ๋ ๊ฐ๋ฅ ์๊ฐ์ UTC๋ก ์ ์ฅํ๊ณ ์ฌ์ฉ์์ ํ์ง ์๊ฐ๋๋ก ๋ ๋๋งํ๋ ์ค์ผ์ค๋ง ์์ง์ ๊ตฌ์ถํ์ต๋๋ค. ์์คํ ์ ๋ํ ์ผ๊ด ์ ์ฝ ์๊ฐ ์ ํ์ ์๋์ผ๋ก ์ฒ๋ฆฌํ๋ฉฐ, ํ ์๊ฐ๋์ ํ์์ด ๋ค๋ฅธ ์๊ฐ๋์ ํํฐ๋ฅผ ๊ฒ์ํ ๋ ์ค๋ณต๋๋ ์๊ฐ ์ฐฝ์ ํ์ํฉ๋๋ค.
MicrocosmWorks๋ ์ฆ์ ํ์์๊ฒ ์๋ฆฌ๊ณ , ์ผ์นํ๋ ๊ณผ๋ชฉ ์ ๋ฌธ์ฑ์ ๊ฐ์ง ์ด์ฉ ๊ฐ๋ฅํ ๋์ฒด ํํฐ๋ฅผ ์ ๊ณตํ๋ฉฐ, ์ ํฉํ ๋์์ ์ฐพ์ ์ ์๋ ๊ฒฝ์ฐ ์ธ์ ํฌ๋ ๋ง์ ๋๋ ค์ฃผ๋ ์๋ํ๋ ์ฌ์ค์ผ์ค๋ง ์ํฌํ๋ก์ฐ๋ฅผ ์ค๊ณํ์ต๋๋ค. ๋ฐ๋ณต์ ์ผ๋ก ์ทจ์ํ๋ ํํฐ๋ค์ ์ ๋ขฐ๋ ์ ์ ์์คํ ์์ ํ๋๊ทธ๊ฐ ์ง์ ๋ฉ๋๋ค.
MicrocosmWorks๋ ์ ์ฐํ ํฌ๋ ๋ง ๊ธฐ๋ฐ ๊ตฌ๋ ์์คํ ์ ๊ตฌํํ์ต๋๋ค. ์ด ์์คํ ์์ ํ์๋ค์ ์๋ณ ์๊ฐ ๋ฒ๋ค์ ๊ตฌ๋งคํ๋ฉฐ, ์ด ๋ฒ๋ค์ ์ต๋ 60์ผ๊น์ง ์ด์๋ฉ๋๋ค. ํ๋ซํผ์ ์ฃผ๊ธฐ ์ค ์ ๊ทธ๋ ์ด๋ ๋ฐ ๋ค์ด๊ทธ๋ ์ด๋๋ฅผ ์ง์ํ๋ฉฐ, Stripe์ ๊ตฌ๋ ์ค์ผ์ค๋ง API๋ฅผ ํตํด ๋น๋ก ๋ฐฐ๋ถ ์ฒญ๊ตฌ๊ฐ ์ฒ๋ฆฌ๋ฉ๋๋ค.
๋ค, MicrocosmWorks๋ WebRTC๋ฅผ ์ฌ์ฉํ์ฌ ๋น๋์ค ์ธํ๋ผ๋ฅผ ๊ตฌ์ถํ์ผ๋ฉฐ, SFU (Selective Forwarding Unit) ์ํคํ ์ฒ๋ฅผ ํตํด 1:1 ์ธ์ ๋ถํฐ ์ต๋ 8๋ช ๊น์ง ์ฐธ์ฌํ๋ ๊ทธ๋ฃน ์ธ์ ์ผ๋ก ํ์ฅ ๊ฐ๋ฅํฉ๋๋ค. ๊ทธ๋ฃน ์ธ์ ์ ํ์๋น ๋ ์ ์ ํฌ๋ ๋ง์ ์๋ชจํ์ฌ ํ์ ํ์ต์ ์ฅ๋ คํ๊ณ , ๋์์ ํํฐ์ ์์ ์ ์ ์งํฉ๋๋ค.
MicrocosmWorks๋ ์ผ๋ฐ์ ์ผ๋ก ์๊ฐ๋น $15-$40์ ๊ฐ๋ฐ ๋น์ฉ์ผ๋ก ํํฐ๋ง ํ๋ซํผ์ ์ ๊ณตํ๋ฉฐ, ๋น๋์ค ํตํฉ, ์ค์ผ์ค๋ง, ๊ฒฐ์ ๋ฐ ํํฐ ๋งค์นญ์ ํฌํจํ๋ ์ ์ฒด ๋ฒ์๋ 600-900์๊ฐ์ด ์์๋ฉ๋๋ค. WebRTC ์ธํ๋ผ๋ ๋น์ฉ ํจ์จ์ ์ธ ํด๋ผ์ฐ๋ ์ธ์คํด์ค์ ๋ฐฐํฌ๋ ์ ์์ด ์ง์์ ์ธ ์ด์ ๋น์ฉ์ ๋ฎ๊ฒ ์ ์งํฉ๋๋ค.
๋น์ฆ๋์ค ํ์ ์ ์์ํ ์ค๋น๊ฐ ๋์ จ๋์?
๊ทํ์ ๊ณผ์ ์ ์ ์ฌํ ์๋ฃจ์ ์ ์ ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํด ๋ ผ์ํด ๋ณด๊ฒ ์ต๋๋ค.