모바일 웹 앱을 위한 네이티브 같은 페이지 전환 애니메이션 라이브러리
중간맛 분석
스택: TypeScript 기반, React/Next.js·Svelte/SvelteKit·Vue/Nuxt·Solid·Angular·Qwik 지원 | 난이도: 낮음 (2–3개 파일만 수정) | 즉시 사용 가능: 제공되는 설정 파일을 복사하면 바로 동작 | 데모: https://ssgoi.dev에서 Drill(깊이감 네비게이션)·Sheet(팝업 오버레이)·Zoom(상세 페이지 펼침)·Film(다중 레이어) 등 4가지 프리셋 애니메이션 확인 가능
이런 레포예요
이럴 때 쓰면 좋아요
- 모바일 전자상거래 앱에서 상품 목록에서 상세 페이지로 자연스러운 애니메이션 전환
- 채팅·메시징 앱에서 대화 화면 진입·퇴출 시 깊이감 있는 드릴 효과
- 작성 폼·설정 화면을 시트 애니메이션으로 기존 페이지 위에 오버레이
핵심 기능
대안 대비 차별점
View Transition API와 달리 라이브 DOM·런타임 레이어·정밀한 기하학 변환을 지원하므로 상세 페이지가 썸네일에서 펼쳐지거나 팝업이 배경 위에 떠오르는 등 복잡한 UI 전환도 구현 가능합니다.
먹어본 사람들
실제로 차려 먹어본 손님들의 흔적이에요 — 한마디와 완주 인증 모두 검수 후 공개돼요.
이 레포, 해먹는 법
처음 오셨어요? 어렵지 않아요 — 위에서 아래로 따라 하면 내 컴퓨터에 이 레포를 차려서 바로 맛볼 수 있어요.
준비물
- Node.js와 npm 또는 yarn
- React 16.8 이상 (또는 지원 프레임워크)
- Web Animations API 지원 브라우저
바로 차려먹기Node.js (pnpm)
깃밥이 레포 구조를 확인하고 만든 실행 명령이에요. 터미널에 붙여넣으면 받기부터 실행까지 한 번에 진행돼요.
git clone --depth 1 https://github.com/meursyphus/ssgoi.git && cd ssgoi && pnpm install && pnpm run dev
코드는 내 컴퓨터에서 실행돼요 — 처음 보는 레포라면 내용을 한번 훑어보고 실행하는 습관을 추천해요.
README가 안내하는 자세한 단계 보기
- 의존성 설치
npm install @ssgoi/react
- SSGOI 설정 파일 생성 (app/ssgoi-provider.tsx)
"use client";
import { type ReactNode } from "react";
import { Ssgoi } from "@ssgoi/react";
import { drill } from "@ssgoi/react/view-transitions";
const config = {
transitions: [{ on: "/**", except: "/", transition: drill() }],
};
export function SsgoiProvider({ children }: { children: ReactNode }) {
return <Ssgoi config={config}>{children}</Ssgoi>;
}
- 라우트 경계 컴포넌트 생성 (app/ssgoi-route-boundary.tsx)
"use client";
import { type ReactNode } from "react";
import { usePathname } from "next/navigation";
export function SsgoiRouteBoundary({ children }: { children: ReactNode }) {
const pathname = usePathname();
return (
<div key={pathname} data-ssgoi-transition={pathname}>
{children}
</div>
);
}
- 루트 레이아웃에 통합 (app/layout.tsx)
import { type ReactNode } from "react";
import { SsgoiProvider } from "./ssgoi-provider";
import { SsgoiRouteBoundary } from "./ssgoi-route-boundary";
export default function RootLayout({ children }: { children: ReactNode }) {
return (
<html lang="en">
<body>
<main className="relative z-0 min-h-dvh overflow-x-clip">
<SsgoiProvider>
<SsgoiRouteBoundary>{children}</SsgoiRouteBoundary>
</SsgoiProvider>
</main>
</body>
</html>
);
}
깃밥트라이로 맛보기
받아보기 귀찮고 살짝 불안했다면 — 안전 스캔부터 설치까지 터미널 한 줄로 끝나요.
터미널에 붙여넣으면 깃밥 안전 스캔 → 격리 폴더 clone → 설치 → 실행법 안내까지 자동이에요. 처음이어도 괜찮아요 — 이 한 줄이 전부예요.
npx gitbap-try meursyphus/ssgoi
Node.js만 있으면 설치 없이 실행돼요 · 깃밥트라이가 뭐예요? →
별 추이 · 7일
활용성 · 따라 만들기 좋은가
- 관대한 라이선스
- 테스트 있음
- 예제 디렉토리
- 최근 활동
- AGENTS.md
- llms.txt
- 템플릿
🟢 최근 활동 있음 · 2023년 생성
「웹·Next.js·풀스택」 이런 레포, 매주 받아보실래요?
매주 월요일 아침, 골라 담은 밥상만. 광고 없이 · 언제든 해지.
내 레포인가요? README에 깃밥 배지 달기
[](https://www.gitbap.com/r/meursyphus/ssgoi)🔌 클로드에서 바로 써보기 — 깃밥 연결하는 법
깃밥을 클로드에 연결하면 이런 레포를 클로드·커서·Codex에서 바로 찾고 체험할 수 있어요.
클로드 설정 → 커넥터에 이 주소를 붙여넣기.
https://www.gitbap.com/api/mcp플러그인을 설치하면 /gitbap-trending·/gitbap-try 슬래시 커맨드로 레포를 그 자리에서 체험. Claude Code에서 아래 두 줄을 차례로 실행하세요.
/plugin marketplace add jakeparkcolde/gitbap-cowork/plugin install gitbap-cowork@gitbapAI가 README 기반으로 요약했습니다 · 원문 보기