From 0c45a4130cd6372639c1009df935845f1070e8c1 Mon Sep 17 00:00:00 2001 From: sirpiglr <49359077-sirpiglr@users.noreply.replit.com> Date: Sat, 13 Dec 2025 02:27:42 +0000 Subject: [PATCH] Update routing and URL handling for opportunities and dev-link Consolidate dev-link routes to redirect to opportunities with an ecosystem filter, and update URL parameter handling in OpportunitiesHub.tsx to preserve existing query parameters. Replit-Commit-Author: Agent Replit-Commit-Session-Id: 9203795e-937a-4306-b81d-b4d5c78c240e Replit-Commit-Checkpoint-Type: intermediate_checkpoint Replit-Commit-Event-Id: 05574cd0-d046-4714-966b-aa44b58b4ce8 Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/7c94b7a0-29c7-4f2e-94ef-44b2153872b7/9203795e-937a-4306-b81d-b4d5c78c240e/aPpJgbb Replit-Helium-Checkpoint-Created: true --- client/App.tsx | 2 +- .../pages/opportunities/OpportunitiesHub.tsx | 31 ++++++++++++++----- replit.md | 3 +- 3 files changed, 27 insertions(+), 9 deletions(-) diff --git a/client/App.tsx b/client/App.tsx index b2e8335b..4f4f4f56 100644 --- a/client/App.tsx +++ b/client/App.tsx @@ -503,7 +503,7 @@ const App = () => ( {/* Dev-Link routes - now redirect to Nexus Opportunities with ecosystem filter */} } /> } /> diff --git a/client/pages/opportunities/OpportunitiesHub.tsx b/client/pages/opportunities/OpportunitiesHub.tsx index 4a101a50..6718ed74 100644 --- a/client/pages/opportunities/OpportunitiesHub.tsx +++ b/client/pages/opportunities/OpportunitiesHub.tsx @@ -48,13 +48,30 @@ export default function OpportunitiesHub() { setOpportunities(result.data); setTotalPages(result.pagination.pages); - // Update URL params - const params = new URLSearchParams(); - if (selectedArm) params.set("arm", selectedArm); - if (selectedEcosystem && selectedEcosystem !== "all") params.set("ecosystem", selectedEcosystem); - if (search) params.set("search", search); - if (page > 1) params.set("page", String(page)); - setSearchParams(params); + // Update URL params (preserve other params like UTM tracking) + const params = new URLSearchParams(searchParams); + // Update known filter params + if (selectedArm) { + params.set("arm", selectedArm); + } else { + params.delete("arm"); + } + if (selectedEcosystem && selectedEcosystem !== "all") { + params.set("ecosystem", selectedEcosystem); + } else { + params.delete("ecosystem"); + } + if (search) { + params.set("search", search); + } else { + params.delete("search"); + } + if (page > 1) { + params.set("page", String(page)); + } else { + params.delete("page"); + } + setSearchParams(params, { replace: true }); } catch (error) { console.error("Failed to fetch opportunities:", error); setOpportunities([]); diff --git a/replit.md b/replit.md index 15b072d6..2ae184a7 100644 --- a/replit.md +++ b/replit.md @@ -15,7 +15,7 @@ Do not make changes to the file `server/index.ts`. ## System Architecture AeThex is built as a full-stack web application utilizing React 18 with TypeScript for the frontend, Vite 6 as the build tool, and Express.js for the backend. Supabase (PostgreSQL) serves as the primary database. Styling is handled with Tailwind CSS, and UI components leverage Radix UI. TanStack Query is used for state management, and React Router DOM for routing. -The application features a multi-realm system including Nexus, GameForge, Foundation, Labs, Corp, Staff, and Dev-Link (7 total), each with specific functionalities. Key capabilities include community features (feed, posts, comments), a Creator Network with profile passports and achievements, and a Nexus Marketplace for opportunities and contracts. +The application features a multi-realm system including Nexus, GameForge, Foundation, Labs, Corp, and Staff (6 realms), each with specific functionalities. Dev-Link has been merged into Nexus as an ecosystem filter. Key capabilities include community features (feed, posts, comments), a Creator Network with profile passports and achievements, and a Nexus Marketplace for opportunities and contracts. ### Discord Integration Architecture Discord functionality is split between two deployments: @@ -70,6 +70,7 @@ This ensures the Foundation's user-facing URLs display `aethex.foundation` in th - **Landing Page Styling Alignment**: Updated hero CTAs and featured realm button to use shared Button component with asChild prop for consistent styling and ripple effects. Fixed Button component to support ripple animation for both native buttons and asChild elements. Removed unused backgroundGradient variable. Custom landing page cards (featured-card, stats-strip, hero-intro) intentionally use advanced CSS effects while still leveraging design tokens (--aethex-*, --foreground, --background, --muted, etc.). - **Get Started Page Enhancement**: Comprehensive onboarding page (`/get-started`) with: Stats/Social Proof section (animated counters: 12k+ builders, 500+ projects, 7 realms, 10 AI agents), Video Demo placeholder, 3-step guided signup flow, Platform Features section (6 cards: XP & Leveling, AI Agents, Creator Passports, Community, Badges, Security), Realms Overview (all 7 realms with descriptions and feature tags), Testimonials section (4 community quotes), and FAQ section (6 expandable questions). AnimatedCounter uses proper useRef cleanup for requestAnimationFrame. - **Axiom Model Code Cleanup**: Removed orphaned page files in `foundation/`, `gameforge/`, and `labs/` folders (20+ files) that were dead code since all routes redirect to external domains. Cleaned up unused imports from App.tsx. Routes continue to redirect: `/foundation/*` → aethex.foundation, `/gameforge/*` → aethex.foundation/gameforge, `/labs/*` → aethex.studio. +- **Dev-Link Merged into Nexus**: Dev-Link realm eliminated as standalone. Roblox and other platform communities now accessible via ecosystem filter tabs in Nexus Opportunities Hub. Filter tabs: [All] [Roblox] [Unity] [Web] [Audio] [Design]. Routes `/dev-link/*` redirect to `/opportunities?ecosystem=roblox`. Deleted 8 Dev-Link page files and updated App.tsx routes. ## External Dependencies - **Supabase**: Used for database (PostgreSQL), authentication, and real-time features.