106 lines
3.4 KiB
Text
106 lines
3.4 KiB
Text
AXIOM MODEL - PHASE 1: CODE MIGRATION CHECKLIST
|
|
================================================
|
|
Mission: Copy all auth code from aethex.dev (Vercel) to aethex.foundation (Replit)
|
|
|
|
PAGES TO COPY (7 files)
|
|
======================
|
|
□ code/client/pages/Login.tsx
|
|
□ code/client/pages/Onboarding.tsx
|
|
□ code/client/pages/DiscordVerify.tsx
|
|
□ code/client/pages/Dashboard.tsx
|
|
□ code/client/pages/settings/ProfileSettings.tsx (if exists)
|
|
□ code/client/pages/Profile.tsx (if exists)
|
|
□ code/client/pages/SubdomainPassport.tsx
|
|
|
|
CONTEXTS & STATE (3 files)
|
|
==========================
|
|
□ code/client/contexts/AuthContext.tsx
|
|
□ code/client/contexts/DiscordActivityContext.tsx (optional)
|
|
□ code/client/contexts/ThemeContext.tsx
|
|
|
|
COMPONENTS (10+ files)
|
|
======================
|
|
□ code/client/components/settings/OAuthConnections.tsx
|
|
□ code/client/components/passport/PassportSummary.tsx
|
|
□ code/client/components/ErrorBoundary.tsx
|
|
□ code/client/components/LoadingScreen.tsx
|
|
□ code/client/components/Layout.tsx
|
|
□ code/client/components/ui/* (ALL - accordion, alert, toast, etc.)
|
|
□ code/client/components/admin/AdminDiscordManagement.tsx (optional)
|
|
|
|
API ENDPOINTS (7 files)
|
|
=======================
|
|
Discord OAuth:
|
|
□ code/api/discord/oauth/start.ts
|
|
□ code/api/discord/oauth/callback.ts
|
|
□ code/api/discord/verify-code.ts
|
|
□ code/api/discord/link.ts
|
|
□ code/api/discord/sync-roles.ts
|
|
□ code/api/discord/activity-auth.ts
|
|
|
|
Profile & Passport:
|
|
□ code/api/profile/ensure.ts
|
|
□ code/api/passport/subdomain/[username].ts
|
|
□ code/api/passport/project/[slug].ts
|
|
|
|
DATABASE MIGRATIONS (1 file)
|
|
============================
|
|
□ code/supabase/migrations/20250107_add_discord_integration.sql
|
|
□ All other user/auth migrations
|
|
|
|
STYLING & CONFIG (3 files)
|
|
==========================
|
|
□ code/client/global.css
|
|
□ code/tailwind.config.js
|
|
□ code/postcss.config.js
|
|
□ code/tsconfig.json
|
|
|
|
ENVIRONMENT VARIABLES TO SET
|
|
============================
|
|
VITE_SUPABASE_URL=https://kmdeisowhtsalsekkzqd.supabase.co
|
|
VITE_SUPABASE_ANON_KEY=sb_publishable_DfTB6qME8BkTmHNJ3dCBew_t1NLATEq
|
|
SUPABASE_SERVICE_ROLE=eyJhbGc...
|
|
DISCORD_CLIENT_ID=578971245454950421
|
|
DISCORD_CLIENT_SECRET=JKlilGzcTWgfmt2wEqiHO8wpCel5VEji
|
|
DISCORD_BOT_TOKEN=NTc4OTcx...
|
|
VITE_API_BASE=https://aethex.foundation
|
|
|
|
NPM PACKAGES TO INSTALL
|
|
=======================
|
|
@supabase/supabase-js@^2.x
|
|
@discord/embedded-app-sdk@^2.x
|
|
react-router-dom@^6.x
|
|
react-hook-form@^7.x
|
|
zod@^3.x
|
|
next-themes@^0.3.x
|
|
lucide-react (latest)
|
|
sonner@^1.x
|
|
All @radix-ui/* packages
|
|
|
|
CRITICAL ADAPTATIONS
|
|
====================
|
|
1. Update all VITE_API_BASE=https://aethex.foundation (not aethex.dev)
|
|
2. Convert Vercel /api/* functions to Express routes on Replit
|
|
3. Update Discord OAuth app redirect URI to https://aethex.foundation/api/discord/oauth/callback
|
|
4. Fix all import paths for new directory structure
|
|
5. Ensure Supabase environment variables are set on Replit
|
|
|
|
TESTING CHECKLIST
|
|
=================
|
|
□ Users can log in via Discord
|
|
□ Users can see their profile after login
|
|
□ Users can link additional OAuth providers
|
|
□ Passports display correctly
|
|
□ OAuth callbacks complete without errors
|
|
□ Supabase queries work (user_profiles table accessible)
|
|
|
|
ESTIMATED TIME: 17-25 hours
|
|
|
|
NEXT STEPS
|
|
==========
|
|
1. Copy all files listed above to aethex.foundation (Replit)
|
|
2. Update import paths & environment variables
|
|
3. Test login flow end-to-end
|
|
4. Once Phase 1 is complete, proceed to Phase 2 (database permissions)
|
|
|
|
Questions? See AXIOM-MODEL-PHASE1-SCOPE.md for detailed breakdown.
|