๋ฐฐํฌ
StudioGo ๋ฐฐํฌ ๊ฐ์ด๋์ ๋๋ค.
๋ชจ๋ ธ๋ ํฌ ๊ตฌ์กฐ
studiogo/
โโโ apps/
โ โโโ mobile/ # Expo ์ฑ (React Native)
โ โโโ api/ # Hono API (Vercel Serverless)
โโโ shared/
โ โโโ domain/ # ์์ ๋น์ฆ๋์ค ๊ท์น
โ โโโ contracts/ # Zod ์คํค๋ง, DTO
โ โโโ db/ # Drizzle ์คํค๋ง, ๋ง์ด๊ทธ๋ ์ด์
โ โโโ constants/ # ๊ณต์ ์์API ์๋ฒ ๋ฐฐํฌ (Vercel Serverless)
main ๋ธ๋์น์ ํธ์ ์ Vercel์ด ์๋ ๋น๋ ๋ฐ ๋ฐฐํฌํฉ๋๋ค.
ํ๊ฒฝ ๋ณ์
| ๋ณ์ | ์ค๋ช |
|---|---|
DATABASE_URL | Neon PostgreSQL ์ฐ๊ฒฐ ๋ฌธ์์ด |
KAKAO_CLIENT_ID | ์นด์นด์ค ๋ก๊ทธ์ธ ์ฑ ํค |
KAKAO_CLIENT_SECRET | ์นด์นด์ค ๋ก๊ทธ์ธ ์ํฌ๋ฆฟ |
CRON_SECRET | ํฌ๋ก ์์ ๋ณด์ ํค |
EXPO_PUSH_TOKEN | Expo Push ์๋ฆผ ํ ํฐ |
๋ชจ๋ฐ์ผ ์ฑ ๋ฐฐํฌ
EAS Build (Expo Application Services)
# iOS ๋น๋
eas build --platform ios --profile production
# Android ๋น๋
eas build --platform android --profile production
# ์คํ ์ด ์ ์ถ
eas submit --platform ios
eas submit --platform androidOTA ์ ๋ฐ์ดํธ
๋ค์ดํฐ๋ธ ์ฝ๋ ๋ณ๊ฒฝ์ด ์๋ ๊ฒฝ์ฐ OTA(Over The Air) ์ ๋ฐ์ดํธ ๊ฐ๋ฅ:
eas update --branch production --message "์
๋ฐ์ดํธ ์ค๋ช
"๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ง์ด๊ทธ๋ ์ด์
# Drizzle ๋ง์ด๊ทธ๋ ์ด์
์์ฑ
npx drizzle-kit generate
# ๋ง์ด๊ทธ๋ ์ด์
์ ์ฉ
npx drizzle-kit migrate๊ฐ๋ฐ ์๋ฒ
npm run dev:all # ๋ชจ๋ฐ์ผ + API ๋์ ์คํ