Skip to content

Feature/clerk auth migration#6

Open
hamehrabi wants to merge 17 commits intomainfrom
feature/clerk-auth-migration
Open

Feature/clerk auth migration#6
hamehrabi wants to merge 17 commits intomainfrom
feature/clerk-auth-migration

Conversation

@hamehrabi
Copy link
Contributor

No description provided.

hamehrabi and others added 2 commits January 21, 2026 17:29
- Use Supabase recommended pattern for OAuth callback
- Always use https:// for forwarded host (production)
- Use origin directly from request URL
- Fixes sign-in loop issue on Vercel

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Remove Supabase Auth and migrate to Clerk for authentication
- Add ClerkProvider to root layout
- Create new middleware with clerkMiddleware for route protection
- Protect all routes except Home page (unauthenticated users only see /)
- Add user sync utility (lib/clerk/sync-user.ts) to sync Clerk users with Supabase profiles
- Add useProfile hook for client-side profile fetching
- Update all auth consumer components to use Clerk hooks
- Delete old auth files (auth-provider, login page, auth callback)
- Add .dockerignore to fix Docker build issues

Breaking changes:
- Requires Clerk API keys in .env.local
- Google OAuth only (configured in Clerk dashboard)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@vercel
Copy link

vercel bot commented Jan 22, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
vibe-coding-academy Ready Ready Preview, Comment Jan 26, 2026 10:58am
vibe-coding-academy-rdbb Error Error Jan 26, 2026 10:58am

Request Review

Add @ts-expect-error for Supabase insert type inference issue.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The type error doesn't occur in Vercel's build environment.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Use @ts-ignore instead of @ts-expect-error to handle
inconsistent type checking between environments.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add dynamic week sections stored in database (week_sections table)
- Enable inline editing for admins on weeks, people, projects, badges pages
- Remove separate /admin panel entirely
- Simplify roles to admin/member only (remove facilitator)
- Add admin hook for role checking
- Create badge management components (create/edit/delete/award)
- Add role selector for admins on people page
- Allow admins to edit any project
- Add database migration for week_sections and updated RLS policies

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Fix horizontal tabs (Tailwind dynamic class issue)
- Add delete member functionality for admins
- Add/edit/delete weeks on weeks list page
- Add Projects tab to badges page with owner badges
- Better error messages for badge saving
- Add database migration for admin delete policies

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Create centralized server actions (app/actions/admin.ts) for all admin operations
- Fix Clerk + Supabase RLS mismatch by using createAdminClient() with service role
- Update all badge, week, section, and people components to use server actions
- Fix week number dropdown to show all numbers with "(exists)" labels
- Add enhanced Projects tab with sortable table view
- Add instructor feedback feature for projects
- Create migration for project_feedback table (00006)
- Add Table UI component

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Make week number optional and editable (can be added/removed as tag)
- Allow all week sections to be deleted (remove is_system restriction)
- Simplify badges page to Leaderboard view only (remove tabs)
- Add drag-and-drop project reordering for admins using @dnd-kit
- Add direct project-badge relationship (badges assigned to projects)
- Add server actions: reorderProjects, awardBadgeToProject, removeBadgeFromProject

Database migrations included:
- 00007: Make week number nullable
- 00008: Add sort_order to projects
- 00009: Add project_id to badge_awards

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Remove published/draft system entirely - all content is always visible
- Fix unnumbered weeks - route now supports both week numbers and UUIDs
- Convert Demos tab to deletable database section
- Auto-create Demos section when creating a new week
- Fix project badges not displaying (make user_id nullable)
- Add migration to create Demos sections for existing weeks

Migration 00010 must be run to:
1. Make badge_awards.user_id nullable for project badges
2. Add Demos sections to existing weeks

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Change week number input from dropdown (1-10) to text field for any number
- Add auto-shift logic: assigning an existing week number shifts others up
- Use stored level field instead of calculating from week number
- Group all weeks by their level (unnumbered weeks now appear in correct level)
- Fix project badges by explicitly setting user_id: null
- Update migration to set existing weeks to published

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add TipTap-based rich text editor with formatting toolbar
- Support for bold, italic, headings (H1-H3), bullet/numbered lists
- Paste formatted text from Word/Docs preserves formatting
- Visual Editor and Markdown Source toggle tabs
- Create HTML-to-Markdown converter for storage compatibility
- Add editor styles to globals.css

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Handle empty paragraphs as blank line markers
- Convert blank lines back to empty <p> tags for TipTap
- Allow up to 3 consecutive newlines in markdown output

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add @tiptap/extension-link with auto-link detection for pasted URLs
- Add Link/Unlink toolbar buttons to rich text editor
- Style links with primary color, underline, and open in new tab
- Fix blank line preservation to support up to 3 consecutive blank lines
- Update ReactMarkdown to render links with proper styling

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant