한 줄로, 모든 프레임워크.
SvelteKit, Astro, SolidStart, Qwik, Nuxt, Next.js, Hono. 프레임워크 어댑터로 한 줄이면 인증 연동이 끝납니다. 표준 로그인 엔드포인트, 웹훅 이벤트, AI 에이전트 위임까지.
3분 안에 가동.
SDK 설치, Auth 객체 생성, 라우트 연결. 한 프레임워크에서 3단계로 완료됩니다.
SDK 설치
bun add @modfolio/connect-sdk@^7.0.0
Auth 설정
import { createSvelteKitAuth } from "@modfolio/connect-sdk/sveltekit";
export const auth = createSvelteKitAuth({ clientId: "my-app" });
export const handle = auth.handle;라우트 연결
// src/routes/auth/login/+server.ts export const GET = auth.loginHandler; // src/routes/auth/callback/+server.ts export const GET = auth.callbackHandler; // src/routes/auth/logout/+server.ts export const GET = auth.logoutHandler;
7개 어댑터, 같은 API.
각 프레임워크의 미들웨어 패턴에 맞춘 어댑터. 모두 같은 ConnectAuth 인터페이스, 같은 핸들러 패턴.
SvelteKit
auth.tsimport { createSvelteKitAuth } from "@modfolio/connect-sdk/sveltekit";
export const auth = createSvelteKitAuth({ clientId: "my-app" });
export const handle = auth.handle;Astro
auth.tsimport { createAstroAuth } from "@modfolio/connect-sdk/astro";
export const auth = createAstroAuth({ clientId: "my-app" });
export const onRequest = auth.middleware;Nuxt
auth.tsimport { createNuxtAuth } from "@modfolio/connect-sdk/nuxt";
export const auth = createNuxtAuth({ clientId: "my-app" });
export default auth.eventHandler;SolidStart
auth.tsimport { createSolidStartAuth } from "@modfolio/connect-sdk/solidstart";
export const auth = createSolidStartAuth({ clientId: "my-app" });
export const middleware = auth.middleware;Qwik
auth.tsimport { createQwikAuth } from "@modfolio/connect-sdk/qwik";
export const auth = createQwikAuth({ clientId: "my-app" });
export const onRequest = auth.onRequest;Next.js
auth.tsimport { createNextAuth } from "@modfolio/connect-sdk/nextjs";
export const auth = createNextAuth({ clientId: "my-app" });
export const middleware = auth.middleware;Hono
auth.tsimport { createHonoAuth } from "@modfolio/connect-sdk/hono";
export const auth = createHonoAuth({ clientId: "my-app" });
app.use("/*", auth.middleware);13개 엔드포인트, 네 가지 그룹.
OIDC Core, Discovery, FedCM, SCIM. 각 엔드포인트가 표준 RFC에 대응됩니다.
OIDC Core
| GET | /sso/authorize | Authorization (prompt=none/login/consent) |
| POST | /sso/token | Code/Refresh/Credentials → JWT |
| POST | /sso/par | Pushed Authorization Request |
| POST | /sso/verify | JWT 서명 검증 (DPoP 지원) |
| POST | /sso/introspect | 토큰 인트로스펙션 |
| POST | /sso/revoke | 토큰 폐기 |
Discovery
| GET | /.well-known/openid-configuration | OIDC Discovery |
| GET | /.well-known/ssf-configuration | SSF Transmitter |
| GET | /.well-known/web-identity | FedCM Provider |
FedCM
| GET | /fedcm/accounts | FedCM 계정 목록 |
| POST | /fedcm/token | FedCM 토큰 발급 |
SCIM
| GET | /scim/v2/Users | 사용자 프로비저닝 |
| GET | /scim/v2/Groups | 그룹 동기화 |
웹훅 이벤트, 8개 카테고리.
웹훅과 실시간 보안 신호(SSF)로 모든 활동을 실시간 전파합니다. 각 이벤트는 타입이 지정된 형식이라 SDK에서 바로 처리합니다.
login.success, login.failure, login.social, logouttoken.issued, token.refreshed, token.revokeduser.created, user.updated, user.lockedorg.created, org.member_added, org.invitation_sentsecurity.mfa_enabled, security.risk_detectedadmin.client_created, admin.policy_updatedscim.user_provisioned, scim.group_updatedsystem.key_rotated, system.cleanup자주 묻는 질문.
추가 질문은 GitHub Issues 또는 sdk@modfolio.io 로.
어떤 프레임워크를 지원하나요?
SvelteKit, Astro, SolidStart, Qwik, Nuxt, Next.js, Hono 프레임워크 어댑터를 제공합니다.
인증 데이터는 어디에 저장되나요?
Modfolio 가 직접 운영하는 PostgreSQL 데이터베이스에 저장됩니다. Cloudflare Workers 는 인증된 사설 터널로 접속하며, 매일 백업됩니다.
기존 사용자를 마이그레이션할 수 있나요?
직원 계정 자동 등록(SCIM 2.0)으로 기존 디렉토리와 동기화하거나, Better Auth 가입 API로 대량 이전할 수 있습니다.
무료로 시작할 수 있나요?
네 — 직접 가입해서 쓰는 표준 로그인 기능은 무료입니다. 기업용 규정 준수 · 서비스 보장(SLA) · 데이터 처리 계약(DPA)이 필요하면 별도로 협의합니다.
지금 설치하세요.
bun add @modfolio/connect-sdk — 5분이면 충분합니다.