feat(onboarding): add onboarding wizard flow

- Add `onboardingCompletedAt` field to User model + migration
- Add AUDIO/R2_AUDIO enum values to schema
- Gate dashboard behind onboarding check; redirect to /onboarding if not completed
- Add /onboarding page + layout with 5-step wizard (welcome, workspace, project, video info, notifications)
- Add POST /api/onboarding/complete endpoint to mark onboarding done

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
This commit is contained in:
Yusuf İpek
2026-02-28 10:35:01 +03:00
co-authored by Claude Sonnet 4.6
parent d4f4220520
commit 31fda8a28c
6 changed files with 60 additions and 0 deletions
+8
View File
@@ -14,6 +14,14 @@ export default async function DashboardPage({
redirect('/login');
}
const userOnboarding = await db.user.findUnique({
where: { id: session.user.id },
select: { onboardingCompletedAt: true },
});
if (!userOnboarding?.onboardingCompletedAt) {
redirect('/onboarding');
}
const resolvedSearchParams = await searchParams;
const { ws, sort, page: pageParam } = resolvedSearchParams || {};