Update client-side routing and vercel.json to redirect the /feed endpoint to /community/feed, and integrate the Feed component into the Community page. Replit-Commit-Author: Agent Replit-Commit-Session-Id: 9203795e-937a-4306-b81d-b4d5c78c240e Replit-Commit-Checkpoint-Type: full_checkpoint Replit-Commit-Event-Id: a87bc4c4-2f36-45ef-9537-d97890015ee4 Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/7c94b7a0-29c7-4f2e-94ef-44b2153872b7/9203795e-937a-4306-b81d-b4d5c78c240e/duiWnI1 Replit-Helium-Checkpoint-Created: true
7.5 KiB
7.5 KiB
AeThex - Advanced Development Platform
Project Overview
AeThex is a full-stack web application built with React, Vite, Express, and Supabase. It's an advanced development platform and community for builders featuring project collaboration, mentorship programs, research labs, and more.
Tech Stack
- Frontend: React 18 + TypeScript
- Build Tool: Vite 6
- Backend: Express.js (integrated with Vite dev server)
- Database: Supabase (PostgreSQL)
- Styling: Tailwind CSS
- UI Components: Radix UI
- State Management: TanStack Query
- Routing: React Router DOM
Project Structure
├── client/ # React frontend code
│ ├── components/ # React components
│ ├── pages/ # Page components
│ ├── lib/ # Utility libraries
│ ├── hooks/ # Custom React hooks
│ └── contexts/ # React contexts
├── server/ # Express backend
│ └── index.ts # Main server file with API routes
├── api/ # API route handlers
├── discord-bot/ # Discord bot integration
├── docs/ # Documentation files
└── shared/ # Shared code between client/server
Environment Setup
Required Environment Variables
The following Supabase environment variables need to be configured:
VITE_SUPABASE_URL- Your Supabase project URLVITE_SUPABASE_ANON_KEY- Your Supabase anonymous key
Optional variables for full functionality:
VITE_SUPABASE_SERVICE_ROLE_KEY- Service role key for admin operations- Discord-related variables (see
.env.discord.example) - Foundation OAuth variables (see
.env.foundation-oauth.example)
Development
npm install # Install dependencies
npm run dev # Start development server on port 5000
Production Build
npm run build # Build all components (API, client, server)
npm start # Start production server
Replit Configuration
Development
- The development server runs on port 5000 (required for Replit's webview)
- Host is set to
0.0.0.0to allow Replit proxy access allowedHosts: trueconfigured to allow Replit's dynamic proxy hostnames- Vite HMR is configured for proper hot reload in Replit environment
Deployment
- Deployment type: Autoscale
- Build command:
npm run build - Run command:
npm start - The production build serves the client from
dist/spaand runs the Express server fromdist/server
Key Features
- Multi-Realm System: Labs, GameForge, Corp, Foundation, Dev-Link
- Community Features: Feed, posts, comments, likes
- Creator Network: Profile passports, achievements, mentorship
- Nexus Marketplace: Opportunities, contracts, commissions
- Discord Integration: Bot commands, OAuth, role management
- Ethos Guild: Music licensing and artist services
- GameForge: Sprint management, team collaboration
- Foundation: Courses, mentorship programs, achievements
Discord Bot Integration
Bot Details
- Bot Name: AeThex#9389
- Workflow: "Discord Bot" runs alongside main application
- Health Check: Port 8044
Slash Commands
| Command | Description |
|---|---|
/verify |
Link Discord account to AeThex |
/profile |
View AeThex profile |
/set-realm |
Set preferred realm |
/unlink |
Unlink Discord from AeThex |
/verify-role |
Verify Discord roles |
Database Tables
discord_verifications- Temporary verification codes (15 min expiry)discord_links- Permanent Discord-to-AeThex account links
Required Secrets
DISCORD_BOT_TOKEN- Bot token from Discord Developer PortalDISCORD_CLIENT_ID- Application client IDSUPABASE_SERVICE_ROLE- Service role key for database operations
Domain Architecture
Identity Authority
- aethex.foundation - Single Source of Truth (SSOT) for all identity/passport data
- All platforms are OAuth clients consuming Foundation-issued identities
Domain Routing
| Domain | Purpose |
|---|---|
aethex.dev |
Main application platform |
aethex.foundation |
Identity authority, passport API |
*.aethex.me |
Creator Passports (wildcard subdomains) |
*.aethex.space |
Project Passports (wildcard subdomains) |
aethex.app, .locker, .site |
Redirect to aethex.dev |
aethex.studio |
Redirect to aethex.dev/ethos |
aethex.info |
Redirect to aethex.dev/foundation |
Passport API Flow
user.aethex.me → fetches from https://aethex.foundation/api/passport/subdomain/{user}
project.aethex.space → fetches from https://aethex.foundation/api/passport/project/{slug}
Discord OAuth Configuration
Discord Developer Portal (OAuth2 > Redirects)
https://aethex.dev/api/discord/oauth/callback
https://aethex.foundation/api/discord/oauth/callback
https://supabase.aethex.tech/auth/v1/callback
Supabase Dashboard (Authentication > URL Configuration)
- Site URL:
https://aethex.foundation - Redirect URLs:
https://aethex.dev/**https://aethex.foundation/**https://supabase.aethex.tech/auth/v1/callback
Recent Changes (December 3, 2025)
- ✅ Discord-to-Feed Integration: Messages from Discord FEED channel sync to AeThex community feed
- Bot listens to configured channel (DISCORD_MAIN_CHAT_CHANNELS env var)
- Posts display with purple Discord badge and channel name
- Supports images/videos from Discord messages
- Real-time updates via Supabase subscriptions
- ✅ Moved /feed to /community/feed: Feed is now a tab within the Community page
- Old /feed URL redirects to /community/feed
- Added redirect in vercel.json for production
- ✅ Fixed passport subdomain API to call aethex.foundation (identity authority)
- ✅ Fixed API paths:
subdomain-data→subdomain,project-data→project - ✅ Restored wildcard rewrites in vercel.json for
*.aethex.meand*.aethex.space - ✅ Added missing routes to vercel.json: /community/, /developers/, /discord-verify/, /ethos/
- ✅ Added catch-all route for future paths
- ✅ Fixed Discord verification code input to accept alphanumeric codes (was filtering out letters)
- ✅ Added step-by-step error tracking to verify-code API for debugging
- ✅ Configured Discord OAuth redirect URLs for multi-domain setup
- ✅ Discord bot running on Replit (moved from Railway)
Recent Changes (December 2, 2025)
- ✅ Configured Vite to run on port 5000 for Replit compatibility
- ✅ Set up proper host configuration (0.0.0.0) for Replit proxy
- ✅ Added
allowedHosts: trueto allow Replit's dynamic proxy hostnames - ✅ Updated .gitignore to properly exclude environment files
- ✅ Installed all npm dependencies
- ✅ Configured deployment settings for Replit autoscale
- ✅ Fixed server build to output
dist/server/production.mjsfor deployment - ✅ Verified application runs without errors in Replit environment
- ✅ Discord bot (AeThex#9389) running and connected to 7 servers
- ✅ Created discord_verifications and discord_links database tables
- ✅ Registered all 5 slash commands with Discord API
- ✅ Extended auth loading timeout to 30s for slow networks
- ✅ Fixed /community route with wildcard for nested tabs
- ✅ Fixed /developers route showing real user data
Notes
- Supabase credentials must be configured in Replit Secrets for the app to fully function
- The application integrates an Express backend directly into the Vite dev server for seamless API development
- Discord bot runs as a separate workflow on port 8044 (health check only)
- Main application runs on port 5000