From c7a6e27558da60e33546724eb9ffcdbd7656ca84 Mon Sep 17 00:00:00 2001 From: laveshparyani Date: Sun, 17 May 2026 18:42:36 +0530 Subject: [PATCH 1/4] feat: overhaul RestroFX account pricing structure to RAW, Standard Default, and Standard VIP and add docx_content.txt to gitignore --- .gitignore | 52 ++++++ .../app/account-types/[slug]/client-page.tsx | 168 ++++++++---------- apps/web/app/account-types/[slug]/page.tsx | 6 +- apps/web/app/partners/ib/page.tsx | 2 +- .../sections/account-types-section.tsx | 158 +++------------- .../sections/account-types/at-comparison.tsx | 54 +++--- .../sections/account-types/at-faq.tsx | 13 +- apps/web/components/sections/faq-section.tsx | 2 +- .../sections/markets/markets-grid.tsx | 4 +- .../components/sections/partner-features.tsx | 10 +- .../sections/platform-selector-section.tsx | 64 ++++--- apps/web/components/ui/header-3.tsx | 6 +- 12 files changed, 226 insertions(+), 313 deletions(-) diff --git a/.gitignore b/.gitignore index 859759f..1cedf75 100644 --- a/.gitignore +++ b/.gitignore @@ -44,6 +44,54 @@ Thumbs.db # Turbo .turbo +# TypeScript +*.tsbuildinfo +# Dependencies +node_modules +.pnp +.pnp.js + +# Testing +coverage +*.log + +# Next.js +.next +out +build +dist + +# Production +*.local + +# Debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# OS +.DS_Store +*.pem +Thumbs.db + +# IDE +.vscode +.idea +*.swp +*.swo +*~ + +# Environment +.env +.env.local +.env*.local + +# Vercel +.vercel + +# Turbo +.turbo + # TypeScript *.tsbuildinfo @@ -51,3 +99,7 @@ Thumbs.db # PowerUp Account Docs RestroFX PowerUp_Account_.md RestroFX PowerUp_Account_.pdf + +# Docs +docs/ +docx_content.txt diff --git a/apps/web/app/account-types/[slug]/client-page.tsx b/apps/web/app/account-types/[slug]/client-page.tsx index b9dfbbb..5b1b0b7 100644 --- a/apps/web/app/account-types/[slug]/client-page.tsx +++ b/apps/web/app/account-types/[slug]/client-page.tsx @@ -11,93 +11,25 @@ import { motion } from "framer-motion"; import { GlowCard } from "@/components/ui/glow-card"; export const accountDetails = { - powerup: { - id: "bonus", // for register link - title: "PowerUp Account", - heroHeadline: "Deposit $5,000. Trade like you have $11,250.", - heroDescription: "The PowerUp Account gives you 125% extra buying power on every qualifying deposit — automatically. No challenge. No evaluation. No monthly fees. Just deposit and trade.", - whoItsFor: [ - "Newer traders who want more room to learn without risking more capital", - "Active traders who want to scale position size without scaling deposits", - "Anyone who wants prop-style buying power without the prop-style hoops" - ], - whyTitle: "How the Bonus Works", - whyContent: ( -
-

Every qualifying deposit ($250 minimum) is matched with 125% buying power, credited instantly. The bonus is added to your margin — not your withdrawable balance — so it works as extra firepower while you trade.

-
-
- - - - - - - - - - - - - - - -
Your DepositBonus CreditedTotal Buying Power
$250$312.50$562.50
$500$625$1,125
$1,000$1,250$2,250
$2,500$3,125$5,625
$5,000$6,250$11,250
-
-
-

*Maximum bonus per deposit cycle: $6,250. Bonus applies to every qualifying deposit — not just the first.

- -

Bonus Terms (Plain English)

- -
- ), - specs: [ - { label: "Minimum deposit", value: "$250" }, - { label: "Bonus", value: "125% buying power on every qualifying deposit" }, - { label: "Maximum bonus per cycle", value: "$6,250" }, - { label: "Commission", value: "$18 RT per lot" }, - { label: "Spread", value: "From 1.2 pips on majors" }, - { label: "Leverage (majors)", value: "Up to 1:100" }, - { label: "Execution", value: "Market execution" }, - { label: "Margin call / Stop-out", value: "100% / 70%" }, - { label: "Negative balance protection", value: "Always on" }, - { label: "Hedging", value: "Allowed" }, - { label: "Platform", value: "TradeLocker" }, - ] - }, - "ecn-raw": { - id: "ecn-raw", - title: "ECN Raw", - heroHeadline: "Raw market access. No spread markup games.", - heroDescription: "ECN Raw is built for traders who care about execution: tight spreads from 0.0 pips, direct ECN routing, and a flat $6 per lot commission. What you see on the chart is what you trade.", + "raw": { + id: "raw", + title: "RAW", + heroHeadline: "Raw market access. Institutional spreads.", + heroDescription: "The RAW account offers the most direct access to market liquidity. With spreads starting from 0.1 pips and a straightforward $18 RT commission, it's designed for serious traders, scalpers, and algos.", whoItsFor: [ "Active and professional traders", "Scalpers who need tight spreads to make their strategy work", "Algo / EA traders running automated strategies", "Anyone who wants the lowest cost of trading on every ticket" ], - whyTitle: "Why Traders Choose ECN Raw", + whyTitle: "Why Traders Choose RAW", whyContent: ( ), specs: [ - { label: "Minimum deposit", value: "$25" }, - { label: "Commission", value: "$18 per lot" }, - { label: "Spread", value: "From 0.0 pips" }, - { label: "Leverage", value: "Up to 1:1000" }, - { label: "Execution", value: "ECN" }, + { label: "Minimum deposit", value: "$500" }, + { label: "Commission", value: "$18.00 RT" }, + { label: "Spread", value: "From 0.1 pips" }, + { label: "Leverage", value: "Up to 1:500" }, + { label: "Execution", value: "A-Book Direct" }, { label: "Negative balance protection", value: "Always on" }, { label: "EAs / Scalping / Hedging", value: "All permitted" }, { label: "Platform", value: "TradeLocker" }, ] }, - standard: { - id: "standard", - title: "Standard Account", - heroHeadline: "Trading made simple — without compromise.", - heroDescription: "The Standard Account is the balanced option for traders who want flexibility, low entry, and access to every instrument we offer. Tight spreads, fast execution, and zero complexity.", + "ecn-standard-default": { + id: "ecn-standard-default", + title: "ECN / Standard Default", + heroHeadline: "Trading made simple — competitive and flexible.", + heroDescription: "The Standard Default Account is built for the everyday retail trader. With a $100 minimum deposit, 1:500 leverage, and simple $4 RT commissions, it provides a balanced environment for all strategies.", whoItsFor: [ "Traders who want a clean, no-frills account", "Swing and position traders who hold longer-term setups", "Anyone diversifying across forex, metals, indices, and crypto" ], - whyTitle: "Why Traders Choose Standard", + whyTitle: "Why Traders Choose Standard Default", whyContent: ( + ), + specs: [ + { label: "Minimum deposit", value: "$100" }, + { label: "Commission", value: "$4.00 RT" }, + { label: "Spread", value: "From 2.0 pips" }, + { label: "Leverage", value: "Up to 1:500" }, + { label: "Execution", value: "Hybrid" }, + { label: "Negative balance protection", value: "Always on" }, + { label: "EAs / Scalping / Hedging", value: "All permitted" }, + { label: "Platform", value: "TradeLocker" }, + ] + }, + "ecn-standard-vip": { + id: "ecn-standard-vip", + title: "ECN / Standard VIP", + heroHeadline: "Premium structure for high-volume traders.", + heroDescription: "The Standard VIP Account is tailored for high-volume retail traders and VIP affiliates. It offers similar robust conditions to our Default account with spreads starting from 3.5 pips.", + whoItsFor: [ + "High-Volume Retail Traders", + "VIP Affiliates requiring bespoke setups", + "Traders looking for premium tier conditions" + ], + whyTitle: "Why Traders Choose Standard VIP", + whyContent: ( + ), specs: [ - { label: "Minimum deposit", value: "$25" }, - { label: "Commission", value: "$9 per lot" }, - { label: "Spread", value: "From 0.0 pips" }, - { label: "Leverage", value: "Up to 1:1000" }, - { label: "Execution", value: "Market" }, + { label: "Minimum deposit", value: "$100" }, + { label: "Commission", value: "$4.00 RT" }, + { label: "Spread", value: "From 3.5 pips" }, + { label: "Leverage", value: "Up to 1:500" }, + { label: "Execution", value: "Hybrid" }, { label: "Negative balance protection", value: "Always on" }, { label: "EAs / Scalping / Hedging", value: "All permitted" }, { label: "Platform", value: "TradeLocker" }, diff --git a/apps/web/app/account-types/[slug]/page.tsx b/apps/web/app/account-types/[slug]/page.tsx index cdcbeae..cf6ace2 100644 --- a/apps/web/app/account-types/[slug]/page.tsx +++ b/apps/web/app/account-types/[slug]/page.tsx @@ -2,9 +2,9 @@ import { AccountDetailClient } from "./client-page"; export function generateStaticParams() { return [ - { slug: "powerup" }, - { slug: "ecn-raw" }, - { slug: "standard" }, + { slug: "raw" }, + { slug: "ecn-standard-default" }, + { slug: "ecn-standard-vip" }, ]; } diff --git a/apps/web/app/partners/ib/page.tsx b/apps/web/app/partners/ib/page.tsx index 4d99e6c..c897ad9 100644 --- a/apps/web/app/partners/ib/page.tsx +++ b/apps/web/app/partners/ib/page.tsx @@ -62,7 +62,7 @@ export default function IBProgramPage() { const stats = [ { value: "$5M+", label: "Paid to IBs" }, { value: "200+", label: "Active IBs" }, - { value: "Up to $15", label: "Per Lot Rebate" }, + { value: "Up to $25", label: "Per Lot Rebate" }, { value: "24/7", label: "IB Support" } ]; diff --git a/apps/web/components/sections/account-types-section.tsx b/apps/web/components/sections/account-types-section.tsx index ea8a5aa..434e452 100644 --- a/apps/web/components/sections/account-types-section.tsx +++ b/apps/web/components/sections/account-types-section.tsx @@ -11,56 +11,42 @@ import { TrendingUp, Zap, Shield, ArrowRight, Info, X, CheckCircle2 } from "luci const accountTypes: AccountType[] = [ { - id: "bonus", - name: "PowerUp Account", - spread: "From 1.2 pips", - commission: "$18 RT per lot", - leverage: "Up to 1:100 (Majors)", - executionType: "Market", - minimumDeposit: "$250", + id: "raw", + name: "RAW", + spread: "From 0.1 pips", + commission: "$18.00 RT", + leverage: "Up to 1:500", + executionType: "A-Book Direct", + minimumDeposit: "$500", }, { - id: "ecn-raw", - name: "ECN Raw", - spread: "From 0.0 pips", - commission: "$18 per lot", - leverage: "Up to 1:1000", - executionType: "ECN", - minimumDeposit: "$25", + id: "ecn-standard-default", + name: "ECN / Standard Default", + spread: "From 2.0 pips", + commission: "$4.00 RT", + leverage: "Up to 1:500", + executionType: "Hybrid", + minimumDeposit: "$100", popular: true, }, { - id: "standard", - name: "Standard Account", - spread: "From 0.0 pips", - commission: "$9 per lot", - leverage: "Up to 1:1000", - executionType: "Market", - minimumDeposit: "$25", + id: "ecn-standard-vip", + name: "ECN / Standard VIP", + spread: "From 3.5 pips", + commission: "$4.00 RT", + leverage: "Up to 1:500", + executionType: "Hybrid", + minimumDeposit: "$100", }, ]; const accountIcons: Record = { - bonus: Zap, - "ecn-raw": TrendingUp, - standard: Shield, + raw: Zap, + "ecn-standard-default": TrendingUp, + "ecn-standard-vip": Shield, }; export function AccountTypesSection() { - const [isModalOpen, setIsModalOpen] = useState(false); - - const bonusRules = [ - { rule: "Minimum deposit to receive bonus", detail: "$250 — below this, no bonus credited" }, - { rule: "Maximum deposit for bonus", detail: "$5,000 — deposits above receive bonus on first $5,000 only" }, - { rule: "Bonus credited instantly", detail: "On deposit confirmation — same day" }, - { rule: "Bonus is buying power only", detail: "Never withdrawable cash — used as margin credit" }, - { rule: "Withdrawal request", detail: "Bonus is removed upon cash withdrawal" }, - { rule: "Client re-deposits", detail: "Fresh 125% bonus stacks on existing balance" }, - { rule: "Multiple deposits", detail: "Each deposit tracked separately with its own bonus" }, - { rule: "Affiliate rebate cap", detail: "$10 per qualifying lot" }, - { rule: "Qualifying lot rule", detail: "Trade must be open minimum 31 seconds" }, - { rule: "Bonus never expires", detail: "Buying power remains indefinitely while account is active" }, - ]; return (
@@ -149,9 +135,9 @@ export function AccountTypesSection() { {account.name}

- {account.id === "bonus" ? "Trade bigger from day one" : - account.id === "ecn-raw" ? "Raw spreads. Direct execution." : - "All-in-one access for every trader"} + {account.id === "raw" ? "Raw spreads. Direct execution." : + account.id === "ecn-standard-default" ? "All-around trading with competitive conditions" : + "Premium structure for VIP clients"}

@@ -164,8 +150,7 @@ export function AccountTypesSection() { { label: "Commission", value: account.commission }, { label: "Leverage", value: account.leverage }, { label: "Execution", value: account.executionType }, - { label: "Min. Deposit", value: account.minimumDeposit }, - ...(account.id === "bonus" ? [{ label: "Bonus", value: "125% buying power" }] : []) + { label: "Min. Deposit", value: account.minimumDeposit } ].map((item, idx) => ( - Learn More + Learn More - - {account.id === "bonus" && ( - - )} @@ -226,81 +201,6 @@ export function AccountTypesSection() { - {/* Bonus Rules Modal */} - - {isModalOpen && ( -
- setIsModalOpen(false)} - className="absolute inset-0 bg-background/80 backdrop-blur-md" - /> - -
-
-
- -
-
-

PowerUp Account Rules

-

125% Bonus Credit Terms & Conditions

-
-
- -
- -
-
- {bonusRules.map((rule, idx) => ( - -
- -
-
-

{rule.rule}

-

{rule.detail}

-
-
- ))} -
- -
-

- Note: The PowerUp bonus is designed solely to increase your trading capacity and margin. It cannot be withdrawn or converted to cash. Risk warning: Trading involves significant risk. -

-
-
- -
- -
-
-
- )} -
); } diff --git a/apps/web/components/sections/account-types/at-comparison.tsx b/apps/web/components/sections/account-types/at-comparison.tsx index f135bda..fd3fc2b 100644 --- a/apps/web/components/sections/account-types/at-comparison.tsx +++ b/apps/web/components/sections/account-types/at-comparison.tsx @@ -8,30 +8,28 @@ import type { AccountType } from "@crimsonfx/types"; const accountTypes: (AccountType & Record)[] = [ { - id: "bonus", - name: "PowerUp Account", - bestFor: "Building accounts faster with bonus capital", - minimumDeposit: "$250", - spread: "From 1.2 pips", - commission: "$18 RT per lot", - leverage: "Up to 1:100", - executionType: "Market", - bonus: "125% buying power", + id: "raw", + name: "RAW", + bestFor: "Pro traders, scalpers, algos", + minimumDeposit: "$500", + spread: "From 0.1 pips", + commission: "$18.00 RT", + leverage: "Up to 1:500", + executionType: "A-Book Direct", easScalping: "Allowed", hedging: "Allowed", negativeBalance: "Yes", platform: "TradeLocker" }, { - id: "ecn-raw", - name: "ECN Raw", - bestFor: "Active traders, scalpers, EAs", - minimumDeposit: "$25", - spread: "From 0.0 pips", - commission: "$18 per lot", - leverage: "Up to 1:1000", - executionType: "ECN", - bonus: "—", + id: "ecn-standard-default", + name: "ECN / Standard Default", + bestFor: "Retail & Everyday Traders", + minimumDeposit: "$100", + spread: "From 2.0 pips", + commission: "$4.00 RT", + leverage: "Up to 1:500", + executionType: "Hybrid", easScalping: "Allowed", hedging: "Allowed", negativeBalance: "Yes", @@ -39,15 +37,14 @@ const accountTypes: (AccountType & Record)[] = [ popular: true, }, { - id: "standard", - name: "Standard Account", - bestFor: "All-around traders", - minimumDeposit: "$25", - spread: "From 0.0 pips", - commission: "$9 per lot", - leverage: "Up to 1:1000", - executionType: "Market", - bonus: "—", + id: "ecn-standard-vip", + name: "ECN / Standard VIP", + bestFor: "High-Volume Retail & VIP Affiliates", + minimumDeposit: "$100", + spread: "From 3.5 pips", + commission: "$4.00 RT", + leverage: "Up to 1:500", + executionType: "Hybrid", easScalping: "Allowed", hedging: "Allowed", negativeBalance: "Yes", @@ -61,7 +58,6 @@ const features = [ { label: "Commission", key: "commission" }, { label: "Leverage", key: "leverage" }, { label: "Execution", key: "executionType" }, - { label: "Bonus", key: "bonus" }, { label: "EAs / Scalping", key: "easScalping" }, { label: "Hedging", key: "hedging" }, { label: "Negative balance protection", key: "negativeBalance" }, @@ -156,7 +152,7 @@ export function AccountTypesComparison() { asChild > - Select {account.id === "ecn-raw" ? "Raw" : account.id === "bonus" ? "PowerUp" : "Standard"} + Select {account.id === "raw" ? "RAW" : account.id === "ecn-standard-default" ? "Default" : "VIP"} diff --git a/apps/web/components/sections/account-types/at-faq.tsx b/apps/web/components/sections/account-types/at-faq.tsx index c718dce..68dfc89 100644 --- a/apps/web/components/sections/account-types/at-faq.tsx +++ b/apps/web/components/sections/account-types/at-faq.tsx @@ -25,17 +25,17 @@ import Link from "next/link"; const faqs = [ { question: "Which account should I choose?", - answer: "It depends on your style. If you want extra trading power from a smaller deposit, go with PowerUp. If you're an active or professional trader chasing the tightest possible spreads, ECN Raw. If you want a balanced, flexible account with the lowest entry deposit and broad instrument access, Standard.", + answer: "It depends on your style. If you're an active or professional trader chasing the tightest possible spreads, go with RAW. If you want a balanced, flexible account with the lowest entry deposit and broad instrument access, Standard Default. For premium affiliate structure, Standard VIP.", icon: UserCheck }, { question: "Can I open more than one account?", - answer: "Yes. Many traders run a PowerUp for active swing trades and an ECN Raw for scalping. There's no limit on additional live accounts under the same profile.", + answer: "Yes. Many traders run a Standard Default for active swing trades and a RAW account for scalping. There's no limit on additional live accounts under the same profile.", icon: Layers }, { question: "What's the minimum deposit to get started?", - answer: "$25 for ECN Raw and Standard. $250 for PowerUp (which is also the minimum to trigger the bonus).", + answer: "$100 for Standard Default and Standard VIP. $500 for RAW.", icon: Wallet }, { @@ -43,14 +43,9 @@ const faqs = [ answer: "Yes — across all three account types. Hedging is also permitted.", icon: Bot }, - { - question: "How is the PowerUp bonus paid out?", - answer: "It isn't paid out — it's added to your margin as buying power, instantly on each qualifying deposit. It increases your trading capacity rather than your withdrawable balance.", - icon: Zap - }, { question: "Can I withdraw my profits?", - answer: "Yes. All trading profits are yours to withdraw at any time. On PowerUp, withdrawals process from your deposited cash and profits — the bonus credit doesn't withdraw with you.", + answer: "Yes. All trading profits are yours to withdraw at any time.", icon: ArrowDownToLine }, { diff --git a/apps/web/components/sections/faq-section.tsx b/apps/web/components/sections/faq-section.tsx index 06765ac..678821c 100644 --- a/apps/web/components/sections/faq-section.tsx +++ b/apps/web/components/sections/faq-section.tsx @@ -37,7 +37,7 @@ const faqs = [ { question: "What leverage is available?", answer: - "We offer leverage up to 1:1000, depending on your account type and the instruments you trade. Leverage allows you to control larger positions with a smaller initial investment, but it's important to understand the risks involved.", + "We offer leverage up to 1:500, depending on your account type and the instruments you trade. Leverage allows you to control larger positions with a smaller initial investment, but it's important to understand the risks involved.", icon: Zap }, ]; diff --git a/apps/web/components/sections/markets/markets-grid.tsx b/apps/web/components/sections/markets/markets-grid.tsx index 283da1b..96f4270 100644 --- a/apps/web/components/sections/markets/markets-grid.tsx +++ b/apps/web/components/sections/markets/markets-grid.tsx @@ -12,8 +12,8 @@ const markets = [ description: "Trade major, minor, and exotic currency pairs with competitive spreads and fast execution.", icon: TrendingUp, instruments: ["EUR/USD", "GBP/USD", "USD/JPY", "AUD/USD", "USD/CAD"], - spread: "From 0.0 pips", - leverage: "Up to 1:1000", + spread: "From 0.1 pips", + leverage: "Up to 1:500", }, { id: "indices", diff --git a/apps/web/components/sections/partner-features.tsx b/apps/web/components/sections/partner-features.tsx index 9697aa7..753a574 100644 --- a/apps/web/components/sections/partner-features.tsx +++ b/apps/web/components/sections/partner-features.tsx @@ -7,18 +7,18 @@ import { Zap, Percent, Activity } from "lucide-react"; export function PartnerFeatures() { const features = [ { - title: "1:1000 Leverage on MT5 & TradeLocker", + title: "1:500 Leverage on TradeLocker", description: - "Instantly unlock 1:1000 leverage and take your account to new heights. Don't let low leverage hold you back! More margin = Larger lots = More Opportunity.", + "Instantly unlock 1:500 leverage and take your account to new heights. Don't let low leverage hold you back! More margin = Larger lots = More Opportunity.", icon: Activity, borderColor: "border-blue-500/20 hover:border-blue-500/40", iconColor: "text-blue-500", bgGradient: "from-blue-500/10 to-transparent", }, { - title: "Enjoy ZERO Commission Trading on our STP Account", + title: "Enjoy Low Commission Trading", description: - "Access some of the lowest all-in costs in FX trading. Benefit from market-leading prices, low spreads, and zero commissions*. Available on MT5 & TradeLocker.", + "Access some of the lowest all-in costs in FX trading. Benefit from market-leading prices, low spreads, and competitive commissions. Available on TradeLocker.", icon: Percent, borderColor: "border-primary/20 hover:border-primary/40", iconColor: "text-primary", @@ -27,7 +27,7 @@ export function PartnerFeatures() { { title: "Trade Raw Spreads with Tier-1 Liquidity", description: - "Sourced 20+ major banks, non-bank LPs, and top cryptocurrency exchanges to offer best trading conditions. During active sessions many pairs will have 0.0 spreads.", + "Sourced 20+ major banks, non-bank LPs, and top cryptocurrency exchanges to offer best trading conditions. During active sessions many pairs will have spreads from 0.1 pips.", icon: Zap, borderColor: "border-green-500/20 hover:border-green-500/40", iconColor: "text-green-500", diff --git a/apps/web/components/sections/platform-selector-section.tsx b/apps/web/components/sections/platform-selector-section.tsx index bddc200..b53c075 100644 --- a/apps/web/components/sections/platform-selector-section.tsx +++ b/apps/web/components/sections/platform-selector-section.tsx @@ -77,43 +77,42 @@ const platforms: Platform[] = [ const accountTypes: (AccountTypeData & Record)[] = [ { - id: "bonus", - name: "PowerUp Account", - spread: "From 1.2 pips", - commission: "$6 RT per lot", - leverage: "Up to 1:100", - executionType: "Market", - minimumDeposit: "$250", - bonus: "125% buying power", + id: "raw", + name: "RAW", + spread: "From 0.1 pips", + commission: "$18.00 RT", + leverage: "Up to 1:500", + executionType: "A-Book Direct", + minimumDeposit: "$500", icon: Zap, - description: "Trade bigger from day one", + description: "Raw market access. Institutional spreads.", color: "from-green-500/10 to-green-600/10", borderColor: "border-green-500/20 hover:border-green-500/40", }, { - id: "ecn-raw", - name: "ECN Raw", - spread: "From 0.0 pips", - commission: "$6 per lot", - leverage: "Up to 1:1000", - executionType: "ECN", - minimumDeposit: "$25", + id: "ecn-standard-default", + name: "ECN / Standard Default", + spread: "From 2.0 pips", + commission: "$4.00 RT", + leverage: "Up to 1:500", + executionType: "Hybrid", + minimumDeposit: "$100", popular: true, icon: TrendingUp, - description: "Raw spreads. Direct execution.", + description: "Competitive conditions for all.", color: "from-red-600/10 to-red-700/20", borderColor: "border-red-600/40 hover:border-red-600/60", }, { - id: "standard", - name: "Standard Account", - spread: "From 0.0 pips", - commission: "$9 per lot", - leverage: "Up to 1:1000", - executionType: "Market", - minimumDeposit: "$25", + id: "ecn-standard-vip", + name: "ECN / Standard VIP", + spread: "From 3.5 pips", + commission: "$4.00 RT", + leverage: "Up to 1:500", + executionType: "Hybrid", + minimumDeposit: "$100", icon: Shield, - description: "All-in-one access for every trader", + description: "Premium structure for VIP clients.", color: "from-orange-500/10 to-orange-600/10", borderColor: "border-orange-500/20 hover:border-orange-500/40", }, @@ -432,14 +431,13 @@ export function PlatformSelectorSection() {
- {[ - { label: "Spread", value: account.spread }, - { label: "Commission", value: account.commission }, - { label: "Leverage", value: account.leverage }, - { label: "Execution", value: account.executionType }, - { label: "Min. Deposit", value: account.minimumDeposit }, - ...(account.id === "bonus" ? [{ label: "Bonus", value: account.bonus }] : []) - ].map((item, idx) => ( + {[ + { label: "Spread", value: account.spread }, + { label: "Commission", value: account.commission }, + { label: "Leverage", value: account.leverage }, + { label: "Execution", value: account.executionType }, + { label: "Min. Deposit", value: account.minimumDeposit } + ].map((item, idx) => ( Date: Sun, 17 May 2026 18:56:15 +0530 Subject: [PATCH 2/4] fix: remove unused imports causing CI build failure --- apps/web/components/sections/account-types-section.tsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/web/components/sections/account-types-section.tsx b/apps/web/components/sections/account-types-section.tsx index 434e452..b9f28f9 100644 --- a/apps/web/components/sections/account-types-section.tsx +++ b/apps/web/components/sections/account-types-section.tsx @@ -1,13 +1,13 @@ "use client"; -import { useState } from "react"; + import Link from "next/link"; import { Card, CardContent, CardHeader, CardTitle, CardFooter } from "@crimsonfx/ui"; import { Button } from "@crimsonfx/ui"; import { AnimatedCard } from "@/components/ui/animated-card"; -import { motion, AnimatePresence } from "framer-motion"; +import { motion } from "framer-motion"; import type { AccountType } from "@crimsonfx/types"; -import { TrendingUp, Zap, Shield, ArrowRight, Info, X, CheckCircle2 } from "lucide-react"; +import { TrendingUp, Zap, Shield, ArrowRight } from "lucide-react"; const accountTypes: AccountType[] = [ { From ee8701125c81dbe17210413108f647f56fd5f279 Mon Sep 17 00:00:00 2001 From: laveshparyani Date: Sun, 17 May 2026 19:00:12 +0530 Subject: [PATCH 3/4] fix: remove unused Zap icon and restore missing avatar dependencies causing tsc build failures --- .../sections/account-types/at-faq.tsx | 1 - package-lock.json | 21 +------------------ 2 files changed, 1 insertion(+), 21 deletions(-) diff --git a/apps/web/components/sections/account-types/at-faq.tsx b/apps/web/components/sections/account-types/at-faq.tsx index 68dfc89..6ac85e1 100644 --- a/apps/web/components/sections/account-types/at-faq.tsx +++ b/apps/web/components/sections/account-types/at-faq.tsx @@ -10,7 +10,6 @@ import { motion } from "framer-motion"; import { ArrowDownToLine, MonitorSmartphone, - Zap, MessageCircle, ArrowRight, UserCheck, diff --git a/package-lock.json b/package-lock.json index dadbdbe..b2258a5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -131,7 +131,6 @@ "resolved": "https://registry.npmjs.org/@types/three/-/three-0.160.0.tgz", "integrity": "sha512-jWlbUBovicUKaOYxzgkLlhkiEQJkhCVvg4W2IYD2trqD2om3VK4DGLpHH5zQHNr7RweZK/5re/4IVhbhvxbV9w==", "license": "MIT", - "peer": true, "dependencies": { "@types/stats.js": "*", "@types/webxr": "*", @@ -1310,7 +1309,6 @@ "resolved": "https://registry.npmjs.org/@react-three/fiber/-/fiber-8.18.0.tgz", "integrity": "sha512-FYZZqD0UUHUswKz3LQl2Z7H24AhD14XGTsIRw3SJaXUxyfVMi+1yiZGmqTcPt/CkPpdU7rrxqcyQ1zJE5DjvIQ==", "license": "MIT", - "peer": true, "dependencies": { "@babel/runtime": "^7.17.8", "@types/react-reconciler": "^0.26.7", @@ -1468,7 +1466,6 @@ "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.27.tgz", "integrity": "sha512-cisd7gxkzjBKU2GgdYrTdtQx1SORymWyaAFhaxQPK9bYO9ot3Y5OikQRvY0VYQtvwjeQnizCINJAenh/V7MK2w==", "license": "MIT", - "peer": true, "dependencies": { "@types/prop-types": "*", "csstype": "^3.2.2" @@ -1480,7 +1477,6 @@ "integrity": "sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==", "devOptional": true, "license": "MIT", - "peer": true, "peerDependencies": { "@types/react": "^18.0.0" } @@ -1505,7 +1501,6 @@ "resolved": "https://registry.npmjs.org/@types/three/-/three-0.182.0.tgz", "integrity": "sha512-WByN9V3Sbwbe2OkWuSGyoqQO8Du6yhYaXtXLoA5FkKTUJorZ+yOHBZ35zUUPQXlAKABZmbYp5oAqpA4RBjtJ/Q==", "license": "MIT", - "peer": true, "dependencies": { "@dimforge/rapier3d-compat": "~0.12.0", "@tweenjs/tween.js": "~23.1.3", @@ -1567,7 +1562,6 @@ "integrity": "sha512-iIACsx8pxRnguSYhHiMn2PvhvfpopO9FXHyn1mG5txZIsAaB6F0KwbFnUQN3KCiG3Jcuad/Cao2FAs1Wp7vAyg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@typescript-eslint/scope-manager": "8.52.0", "@typescript-eslint/types": "8.52.0", @@ -2098,7 +2092,6 @@ "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "dev": true, "license": "MIT", - "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -2557,7 +2550,6 @@ } ], "license": "MIT", - "peer": true, "dependencies": { "baseline-browser-mapping": "^2.9.0", "caniuse-lite": "^1.0.30001759", @@ -3283,7 +3275,6 @@ "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", @@ -3453,7 +3444,6 @@ "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@rtsao/scc": "^1.1.0", "array-includes": "^3.1.9", @@ -4914,7 +4904,6 @@ "integrity": "sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==", "dev": true, "license": "MIT", - "peer": true, "bin": { "jiti": "bin/jiti.js" } @@ -5782,7 +5771,6 @@ } ], "license": "MIT", - "peer": true, "dependencies": { "nanoid": "^3.3.11", "picocolors": "^1.1.1", @@ -5931,7 +5919,6 @@ "resolved": "https://registry.npmjs.org/postprocessing/-/postprocessing-6.38.2.tgz", "integrity": "sha512-7DwuT7Tkst41ZjSj287g7C9c5/D3Xx5rMgBosg0dadbUPoZD2HNzkadKPol1d2PJAoI9f+Jeh1/v9YfLzpFGVw==", "license": "Zlib", - "peer": true, "peerDependencies": { "three": ">= 0.157.0 < 0.183.0" } @@ -6009,7 +5996,6 @@ "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", "license": "MIT", - "peer": true, "dependencies": { "loose-envify": "^1.1.0" }, @@ -6034,7 +6020,6 @@ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", "license": "MIT", - "peer": true, "dependencies": { "loose-envify": "^1.1.0", "scheduler": "^0.23.2" @@ -6932,7 +6917,6 @@ "integrity": "sha512-3ofp+LL8E+pK/JuPLPggVAIaEuhvIz4qNcf3nA1Xn2o/7fb7s/TYpHhwGDv1ZU3PkBluUVaF8PyCHcm48cKLWQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@alloc/quick-lru": "^5.2.0", "arg": "^5.0.2", @@ -7009,8 +6993,7 @@ "version": "0.160.1", "resolved": "https://registry.npmjs.org/three/-/three-0.160.1.tgz", "integrity": "sha512-Bgl2wPJypDOZ1stAxwfWAcJ0WQf7QzlptsxkjYiURPz+n5k4RBDLsq+6f9Y75TYxn6aHLcWz+JNmwTOXWrQTBQ==", - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/three-stdlib": { "version": "2.36.1", @@ -7076,7 +7059,6 @@ "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=12" }, @@ -7313,7 +7295,6 @@ "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "dev": true, "license": "Apache-2.0", - "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" From ee3a4d6f97f087b26471a1912701893cc1fbff0f Mon Sep 17 00:00:00 2001 From: laveshparyani Date: Sun, 17 May 2026 22:55:57 +0530 Subject: [PATCH 4/4] feat(accounts): restore PowerUp account, update minimum deposits to $25/$25/$100, and remove Execution specs --- .../app/account-types/[slug]/client-page.tsx | 102 +++++++----- apps/web/app/account-types/[slug]/page.tsx | 2 +- .../sections/account-types-section.tsx | 146 +++++++++++++++--- .../sections/account-types/at-comparison.tsx | 29 ++-- .../sections/platform-selector-section.tsx | 30 ++-- apps/web/components/ui/header-3.tsx | 6 + 6 files changed, 224 insertions(+), 91 deletions(-) diff --git a/apps/web/app/account-types/[slug]/client-page.tsx b/apps/web/app/account-types/[slug]/client-page.tsx index 5b1b0b7..fe952ab 100644 --- a/apps/web/app/account-types/[slug]/client-page.tsx +++ b/apps/web/app/account-types/[slug]/client-page.tsx @@ -27,9 +27,9 @@ export const accountDetails = {
    {[ "Spreads from 0.1 pips on major pairs", - "Direct A-Book execution — pure liquidity", + "Direct execution — pure liquidity", "Up to 1:500 leverage across forex", - "$500 minimum deposit", + "$25 minimum deposit", "EAs, scalping, and hedging all permitted" ].map((reason, i) => (
  • @@ -42,11 +42,10 @@ export const accountDetails = {
), specs: [ - { label: "Minimum deposit", value: "$500" }, + { label: "Minimum deposit", value: "$25" }, { label: "Commission", value: "$18.00 RT" }, { label: "Spread", value: "From 0.1 pips" }, { label: "Leverage", value: "Up to 1:500" }, - { label: "Execution", value: "A-Book Direct" }, { label: "Negative balance protection", value: "Always on" }, { label: "EAs / Scalping / Hedging", value: "All permitted" }, { label: "Platform", value: "TradeLocker" }, @@ -56,7 +55,7 @@ export const accountDetails = { id: "ecn-standard-default", title: "ECN / Standard Default", heroHeadline: "Trading made simple — competitive and flexible.", - heroDescription: "The Standard Default Account is built for the everyday retail trader. With a $100 minimum deposit, 1:500 leverage, and simple $4 RT commissions, it provides a balanced environment for all strategies.", + heroDescription: "The Standard Default Account is built for the everyday retail trader. With a $25 minimum deposit, 1:500 leverage, and simple $4 RT commissions, it provides a balanced environment for all strategies.", whoItsFor: [ "Traders who want a clean, no-frills account", "Swing and position traders who hold longer-term setups", @@ -68,9 +67,9 @@ export const accountDetails = { {[ "Spreads from 2.0 pips", "Up to 1:500 leverage", - "$100 minimum deposit", + "$25 minimum deposit", "Full instrument access — forex, metals, energies, indices, crypto", - "Hybrid execution with reliable fill quality" + "Reliable execution with fast fill quality" ].map((reason, i) => (
  • @@ -82,53 +81,78 @@ export const accountDetails = { ), specs: [ - { label: "Minimum deposit", value: "$100" }, + { label: "Minimum deposit", value: "$25" }, { label: "Commission", value: "$4.00 RT" }, { label: "Spread", value: "From 2.0 pips" }, { label: "Leverage", value: "Up to 1:500" }, - { label: "Execution", value: "Hybrid" }, { label: "Negative balance protection", value: "Always on" }, { label: "EAs / Scalping / Hedging", value: "All permitted" }, { label: "Platform", value: "TradeLocker" }, ] }, - "ecn-standard-vip": { - id: "ecn-standard-vip", - title: "ECN / Standard VIP", - heroHeadline: "Premium structure for high-volume traders.", - heroDescription: "The Standard VIP Account is tailored for high-volume retail traders and VIP affiliates. It offers similar robust conditions to our Default account with spreads starting from 3.5 pips.", + "powerup": { + id: "bonus", + title: "PowerUp Account", + heroHeadline: "Deposit $5,000. Trade like you have $11,250.", + heroDescription: "The PowerUp Account gives you 125% extra buying power on every qualifying deposit — automatically. No challenge. No evaluation. No monthly fees. Just deposit and trade.", whoItsFor: [ - "High-Volume Retail Traders", - "VIP Affiliates requiring bespoke setups", - "Traders looking for premium tier conditions" + "Newer traders who want more room to learn without risking more capital", + "Active traders who want to scale position size without scaling deposits", + "Anyone who wants prop-style buying power without the prop-style hoops" ], - whyTitle: "Why Traders Choose Standard VIP", + whyTitle: "How the Bonus Works", whyContent: ( -
      - {[ - "Spreads from 3.5 pips", - "Up to 1:500 leverage", - "$100 minimum deposit", - "Full instrument access with Hybrid execution", - "Premium tier affiliate support structure" - ].map((reason, i) => ( -
    • -
      - -
      - {reason} -
    • - ))} -
    +
    +

    Every qualifying deposit ($250 minimum) is matched with 125% buying power, credited instantly. The bonus is added to your margin — not your withdrawable balance — so it works as extra firepower while you trade.

    +
    +
    + + + + + + + + + + + + + + + +
    Your DepositBonus CreditedTotal Buying Power
    $250$312.50$562.50
    $500$625$1,125
    $1,000$1,250$2,250
    $2,500$3,125$5,625
    $5,000$6,250$11,250
    +
    +
    +

    *Maximum bonus per deposit cycle: $6,250. Bonus applies to every qualifying deposit — not just the first.

    + +

    Bonus Terms (Plain English)

    +
      + {[ + "Minimum $250 deposit to qualify for the bonus", + "Bonus is buying power only — it increases your trading capacity, not your withdrawable balance", + "Bonus credits instantly on confirmed deposit", + "If you withdraw funds, the proportional bonus is removed; redeposit to receive a fresh bonus", + "Bonus stays in your account through trading drawdowns — it never expires while your account is active", + "Full terms apply — see Bonus Credit Rules" + ].map((term, i) => ( +
    • + + {term} +
    • + ))} +
    +
    ), specs: [ { label: "Minimum deposit", value: "$100" }, - { label: "Commission", value: "$4.00 RT" }, - { label: "Spread", value: "From 3.5 pips" }, - { label: "Leverage", value: "Up to 1:500" }, - { label: "Execution", value: "Hybrid" }, + { label: "Bonus", value: "125% buying power on every qualifying deposit" }, + { label: "Maximum bonus per cycle", value: "$6,250" }, + { label: "Commission", value: "$18.00 RT" }, + { label: "Spread", value: "From 1.2 pips on majors" }, + { label: "Leverage (majors)", value: "Up to 1:100" }, { label: "Negative balance protection", value: "Always on" }, - { label: "EAs / Scalping / Hedging", value: "All permitted" }, + { label: "Hedging", value: "Allowed" }, { label: "Platform", value: "TradeLocker" }, ] } diff --git a/apps/web/app/account-types/[slug]/page.tsx b/apps/web/app/account-types/[slug]/page.tsx index cf6ace2..1b4c83f 100644 --- a/apps/web/app/account-types/[slug]/page.tsx +++ b/apps/web/app/account-types/[slug]/page.tsx @@ -4,7 +4,7 @@ export function generateStaticParams() { return [ { slug: "raw" }, { slug: "ecn-standard-default" }, - { slug: "ecn-standard-vip" }, + { slug: "powerup" }, ]; } diff --git a/apps/web/components/sections/account-types-section.tsx b/apps/web/components/sections/account-types-section.tsx index b9f28f9..048b137 100644 --- a/apps/web/components/sections/account-types-section.tsx +++ b/apps/web/components/sections/account-types-section.tsx @@ -1,13 +1,13 @@ "use client"; - +import { useState } from "react"; import Link from "next/link"; import { Card, CardContent, CardHeader, CardTitle, CardFooter } from "@crimsonfx/ui"; import { Button } from "@crimsonfx/ui"; import { AnimatedCard } from "@/components/ui/animated-card"; -import { motion } from "framer-motion"; +import { motion, AnimatePresence } from "framer-motion"; import type { AccountType } from "@crimsonfx/types"; -import { TrendingUp, Zap, Shield, ArrowRight } from "lucide-react"; +import { TrendingUp, Zap, Shield, ArrowRight, Info, X, CheckCircle2 } from "lucide-react"; const accountTypes: AccountType[] = [ { @@ -16,8 +16,8 @@ const accountTypes: AccountType[] = [ spread: "From 0.1 pips", commission: "$18.00 RT", leverage: "Up to 1:500", - executionType: "A-Book Direct", - minimumDeposit: "$500", + executionType: "Direct", + minimumDeposit: "$25", }, { id: "ecn-standard-default", @@ -25,17 +25,17 @@ const accountTypes: AccountType[] = [ spread: "From 2.0 pips", commission: "$4.00 RT", leverage: "Up to 1:500", - executionType: "Hybrid", - minimumDeposit: "$100", + executionType: "Standard", + minimumDeposit: "$25", popular: true, }, { - id: "ecn-standard-vip", - name: "ECN / Standard VIP", - spread: "From 3.5 pips", - commission: "$4.00 RT", - leverage: "Up to 1:500", - executionType: "Hybrid", + id: "bonus", + name: "PowerUp Account", + spread: "From 1.2 pips", + commission: "$18.00 RT", + leverage: "Up to 1:100 (Majors)", + executionType: "Standard", minimumDeposit: "$100", }, ]; @@ -43,10 +43,24 @@ const accountTypes: AccountType[] = [ const accountIcons: Record = { raw: Zap, "ecn-standard-default": TrendingUp, - "ecn-standard-vip": Shield, + bonus: Zap, }; export function AccountTypesSection() { + const [isModalOpen, setIsModalOpen] = useState(false); + + const bonusRules = [ + { rule: "Minimum deposit to receive bonus", detail: "$250 — below this, no bonus credited" }, + { rule: "Maximum deposit for bonus", detail: "$5,000 — deposits above receive bonus on first $5,000 only" }, + { rule: "Bonus credited instantly", detail: "On deposit confirmation — same day" }, + { rule: "Bonus is buying power only", detail: "Never withdrawable cash — used as margin credit" }, + { rule: "Withdrawal request", detail: "Bonus is removed upon cash withdrawal" }, + { rule: "Client re-deposits", detail: "Fresh 125% bonus stacks on existing balance" }, + { rule: "Multiple deposits", detail: "Each deposit tracked separately with its own bonus" }, + { rule: "Affiliate rebate cap", detail: "$10 per qualifying lot" }, + { rule: "Qualifying lot rule", detail: "Trade must be open minimum 31 seconds" }, + { rule: "Bonus never expires", detail: "Buying power remains indefinitely while account is active" }, + ]; return (
    @@ -83,7 +97,7 @@ export function AccountTypesSection() { {account.popular && (
    @@ -119,9 +133,7 @@ export function AccountTypesSection() {
    @@ -137,7 +149,7 @@ export function AccountTypesSection() {

    {account.id === "raw" ? "Raw spreads. Direct execution." : account.id === "ecn-standard-default" ? "All-around trading with competitive conditions" : - "Premium structure for VIP clients"} + "Trade bigger from day one"}

    @@ -149,8 +161,8 @@ export function AccountTypesSection() { { label: "Spread", value: account.spread }, { label: "Commission", value: account.commission }, { label: "Leverage", value: account.leverage }, - { label: "Execution", value: account.executionType }, - { label: "Min. Deposit", value: account.minimumDeposit } + { label: "Min. Deposit", value: account.minimumDeposit }, + ...(account.id === "bonus" ? [{ label: "Bonus", value: "125% buying power" }] : []) ].map((item, idx) => ( - + + + {account.id === "bonus" && ( + + )} @@ -201,6 +226,81 @@ export function AccountTypesSection() {
  • + {/* Bonus Rules Modal */} + + {isModalOpen && ( +
    + setIsModalOpen(false)} + className="absolute inset-0 bg-background/80 backdrop-blur-md" + /> + +
    +
    +
    + +
    +
    +

    PowerUp Account Rules

    +

    125% Bonus Credit Terms & Conditions

    +
    +
    + +
    + +
    +
    + {bonusRules.map((rule, idx) => ( + +
    + +
    +
    +

    {rule.rule}

    +

    {rule.detail}

    +
    +
    + ))} +
    + +
    +

    + Note: The PowerUp bonus is designed solely to increase your trading capacity and margin. It cannot be withdrawn or converted to cash. Risk warning: Trading involves significant risk. +

    +
    +
    + +
    + +
    +
    +
    + )} +
    ); } diff --git a/apps/web/components/sections/account-types/at-comparison.tsx b/apps/web/components/sections/account-types/at-comparison.tsx index fd3fc2b..4f9909b 100644 --- a/apps/web/components/sections/account-types/at-comparison.tsx +++ b/apps/web/components/sections/account-types/at-comparison.tsx @@ -11,11 +11,12 @@ const accountTypes: (AccountType & Record)[] = [ id: "raw", name: "RAW", bestFor: "Pro traders, scalpers, algos", - minimumDeposit: "$500", + minimumDeposit: "$25", spread: "From 0.1 pips", commission: "$18.00 RT", leverage: "Up to 1:500", - executionType: "A-Book Direct", + executionType: "Direct", + bonus: "—", easScalping: "Allowed", hedging: "Allowed", negativeBalance: "Yes", @@ -25,11 +26,12 @@ const accountTypes: (AccountType & Record)[] = [ id: "ecn-standard-default", name: "ECN / Standard Default", bestFor: "Retail & Everyday Traders", - minimumDeposit: "$100", + minimumDeposit: "$25", spread: "From 2.0 pips", commission: "$4.00 RT", leverage: "Up to 1:500", - executionType: "Hybrid", + executionType: "Standard", + bonus: "—", easScalping: "Allowed", hedging: "Allowed", negativeBalance: "Yes", @@ -37,14 +39,15 @@ const accountTypes: (AccountType & Record)[] = [ popular: true, }, { - id: "ecn-standard-vip", - name: "ECN / Standard VIP", - bestFor: "High-Volume Retail & VIP Affiliates", + id: "bonus", + name: "PowerUp Account", + bestFor: "Building accounts faster with bonus capital", minimumDeposit: "$100", - spread: "From 3.5 pips", - commission: "$4.00 RT", - leverage: "Up to 1:500", - executionType: "Hybrid", + spread: "From 1.2 pips", + commission: "$18.00 RT", + leverage: "Up to 1:100 (Majors)", + executionType: "Standard", + bonus: "125% buying power", easScalping: "Allowed", hedging: "Allowed", negativeBalance: "Yes", @@ -57,7 +60,7 @@ const features = [ { label: "Spread", key: "spread" }, { label: "Commission", key: "commission" }, { label: "Leverage", key: "leverage" }, - { label: "Execution", key: "executionType" }, + { label: "Bonus", key: "bonus" }, { label: "EAs / Scalping", key: "easScalping" }, { label: "Hedging", key: "hedging" }, { label: "Negative balance protection", key: "negativeBalance" }, @@ -152,7 +155,7 @@ export function AccountTypesComparison() { asChild > - Select {account.id === "raw" ? "RAW" : account.id === "ecn-standard-default" ? "Default" : "VIP"} + Select {account.id === "raw" ? "RAW" : account.id === "ecn-standard-default" ? "Default" : "PowerUp"} diff --git a/apps/web/components/sections/platform-selector-section.tsx b/apps/web/components/sections/platform-selector-section.tsx index b53c075..7b61559 100644 --- a/apps/web/components/sections/platform-selector-section.tsx +++ b/apps/web/components/sections/platform-selector-section.tsx @@ -9,7 +9,6 @@ import { Check, TrendingUp, Zap, - Shield, ArrowRight, ArrowLeft, Laptop, @@ -82,8 +81,8 @@ const accountTypes: (AccountTypeData & Record)[] = [ spread: "From 0.1 pips", commission: "$18.00 RT", leverage: "Up to 1:500", - executionType: "A-Book Direct", - minimumDeposit: "$500", + executionType: "Direct", + minimumDeposit: "$25", icon: Zap, description: "Raw market access. Institutional spreads.", color: "from-green-500/10 to-green-600/10", @@ -95,8 +94,8 @@ const accountTypes: (AccountTypeData & Record)[] = [ spread: "From 2.0 pips", commission: "$4.00 RT", leverage: "Up to 1:500", - executionType: "Hybrid", - minimumDeposit: "$100", + executionType: "Standard", + minimumDeposit: "$25", popular: true, icon: TrendingUp, description: "Competitive conditions for all.", @@ -104,15 +103,16 @@ const accountTypes: (AccountTypeData & Record)[] = [ borderColor: "border-red-600/40 hover:border-red-600/60", }, { - id: "ecn-standard-vip", - name: "ECN / Standard VIP", - spread: "From 3.5 pips", - commission: "$4.00 RT", - leverage: "Up to 1:500", - executionType: "Hybrid", + id: "bonus", + name: "PowerUp Account", + spread: "From 1.2 pips", + commission: "$18.00 RT", + leverage: "Up to 1:100 (Majors)", + executionType: "Standard", minimumDeposit: "$100", - icon: Shield, - description: "Premium structure for VIP clients.", + bonus: "125% buying power", + icon: Zap, + description: "Trade bigger from day one.", color: "from-orange-500/10 to-orange-600/10", borderColor: "border-orange-500/20 hover:border-orange-500/40", }, @@ -435,8 +435,8 @@ export function PlatformSelectorSection() { { label: "Spread", value: account.spread }, { label: "Commission", value: account.commission }, { label: "Leverage", value: account.leverage }, - { label: "Execution", value: account.executionType }, - { label: "Min. Deposit", value: account.minimumDeposit } + { label: "Min. Deposit", value: account.minimumDeposit }, + ...(account.id === "bonus" ? [{ label: "Bonus", value: "125% buying power" }] : []) ].map((item, idx) => (