본문 바로가기
Shoal
Shoal

시작하기

설치

런타임과 프레임워크에 맞는 SDK를 설치하고 타입스크립트 타입을 설정합니다.

@shoal/sdk 패키지는 런타임 의존성이 없고, 타입 정의가 포함된 ESM·CommonJS 빌드를 제공합니다.

Terminal
npm install @shoal/sdk
Terminal
pnpm add @shoal/sdk
Terminal
yarn add @shoal/sdk
Terminal
bun add @shoal/sdk

지원 런타임

런타임최소 버전비고
Node.js18내장 fetch 사용
Bun1.0
Deno1.40npm:@shoal/sdk로 가져오기
브라우저최신 2개 버전클라이언트 키 사용
엣지 (Cloudflare, Vercel, Netlify)—스트리밍 대신 폴링

프레임워크 패키지

코어 SDK 위에 프레임워크에 맞는 헬퍼를 더한 얇은 래퍼입니다. 해당 프레임워크에서만 쓴다면 코어 패키지 대신 이것만 설치하세요.

Terminal
npm install @shoal/react
Terminal
pnpm add @shoal/react
Terminal
yarn add @shoal/react
Terminal
bun add @shoal/react
App.tsx
import { ShoalProvider, useFlag } from "@shoal/react";

function Banner() {
  const on = useFlag("summer-banner");
  return on ? <p>Summer sale — 20% off</p> : null;
}
Terminal
npm install @shoal/next
Terminal
pnpm add @shoal/next
Terminal
yarn add @shoal/next
Terminal
bun add @shoal/next

서버 컴포넌트와 미들웨어는 Next.js 가이드를 참고하세요.

Terminal
npm install @shoal/vue
Terminal
pnpm add @shoal/vue
Terminal
yarn add @shoal/vue
Terminal
bun add @shoal/vue
main.ts
import { shoal } from "@shoal/vue";
app.use(shoal, { key: import.meta.env.VITE_SHOAL_CLIENT_KEY });

플래그 타입 생성

CLI가 프로젝트를 읽어 타입 파일을 만들어 주므로, 플래그 키를 컴파일 시점에 검사할 수 있습니다.

Terminal
npm install -D @shoal/cli
Terminal
pnpm add -D @shoal/cli
Terminal
yarn add -D @shoal/cli
Terminal
bun add -d @shoal/cli
Terminal
npx shoal generate --out src/shoal.d.ts
TypeScript
shoal.isOn("new-chekout");
// ^ Argument of type '"new-chekout"' is not assignable to parameter of type FlagKey
이 페이지가 도움이 되었나요?

검색어를 입력하세요. 브라우저 안의 로컬 색인에서 찾습니다.

↑ ↓ 이동↵ 열기MiniSearch · local