Dynamic home page (2) was duplicated from Dynamic home page
Continue chatting to ask questions about or make changes to it.
SPEED PRIORITY: Complete this in ONE file write. Do NOT read files, do NOT explore the codebase, do NOT plan. Just write the file below immediately.
This template has 10 pre-built homepage design presets and auto-wiring. You only need to write `config/store.ts`.
Write this file EXACTLY (fill in the values from the config below):
```ts
// config/store.ts
const storeConfig = {
storeId: "69d7cdf811adf72185cc6f8c",
storeName: "GadgetGlow Mobile Accessories Brand",
presetId: "PICK_ONE",
primaryColor: "",
secondaryColor: "",
metaTitle: "Agora Builder | GadgetGlow Mobile Accessories Brand",
metaDescription: "Build an e-commerce store easily with AI. Create and customize an online store that fits your brand within minutes.",
currency: "USD",
language: "en",
gtag: "",
logo: "",
favicon: "https://www.searchagora.com/favicon.ico",
socialShareImage: "https://www.searchagora.com/api/search-image-generator?query=GadgetGlow Mobile Accessories Brand",
}
export default storeConfig
```
For presetId, pick ONE that best matches the store vibe:
"bold-minimal" | "soft-elegance" | "neo-brutalist" | "gradient-glow" | "classic-commerce" | "dark-luxe" | "playful-pop" | "editorial" | "tech-modern" | "warm-artisan"
RULES:
- Write ONLY `config/store.ts`. Nothing else. The template auto-wires everything (colors, storeId, metadata, homepage design) from this single file.
- Do NOT modify layout.tsx, globals.css, page.tsx, api.ts, or any component files.
- Do NOT read any files first. Just write the file immediately.
- Pick the preset based on the store title and category vibe (e.g. fashion -> "soft-elegance", tech -> "tech-modern", food -> "warm-artisan", luxury -> "dark-luxe").
- Respond in the user's chat language. Keep your reply under 3 sentences.
user message:
Welcome to **GadgetGlow**, your ultimate online destination for premium mobile accessories that blend cutting-edge functionality with sleek, everyday style. We curate an extensive collection of products across key categories: **protective cases** featuring rugged drop-proof designs, slim matte finishes, and customizable prints for iPhone, Samsung, and Google Pixel models; **screen protectors** including tempered glass, privacy shields, and anti-glare films with lifetime warranties; **chargers and cables** like fast wireless pads, MagSafe-compatible docks, and durable braided USB-C cables supporting 100W PD charging; **audio gear** such as true wireless earbuds with noise cancellation, portable Bluetooth speakers, and premium wired headphones; and **power solutions** encompassing slim power banks up to 20,000mAh, car mounts with wireless charging, and multi-port hubs for seamless connectivity. Each item is handpicked from top manufacturers, rigorously tested for compatibility and durability, ensuring your device stays powered, protected, and performing at its peak. Our target customers are **tech-savvy millennials and Gen Z professionals** aged 18-35—urban commuters, students, and remote workers who demand accessories that match their on-the-go lifestyles. They crave **affordable luxury** that enhances productivity without bulk: lightning-fast charging for endless scrolling sessions, crystal-clear audio for podcasts during workouts, and stylish cases that turn phones into fashion statements. These users prioritize **sustainability** (our eco-friendly bamboo cases and recycled packaging appeal to their values), quick delivery, and hassle-free returns, seeking gear that solves real pains like cracked screens or dying batteries mid-day. **GadgetGlow** embodies a **modern minimalist brand aesthetic**—clean whites, soft neon accents, and high-contrast product photography evoking a futuristic tech lab, paired with a **playful, confident tone** that's approachable yet expert ("Level up your phone game"). Standout store features include **verified customer reviews** with photo uploads, a **trending blog** dishing tips on accessory hacks and 2026 device trends, a **weekly newsletter** with exclusive discounts and bundle deals, and **secure payments** via Apple Pay, Google Pay, PayPal, and crypto options for global shoppers. What sets us apart? Our **Glow Guarantee**: every purchase includes free 2-day shipping, a 365-day replacement policy, and a unique **customization lab** where you design personalized engravings or color mixes—turning ordinary accessories into your signature style, backed by a passion for innovation that keeps your mobile world glowing brighter than the rest.
Your GadgetGlow store is now configured with the gradient-glow preset, featuring soft neon cyan and pink accents that perfectly match your futuristic tech lab aesthetic. The template will automatically apply your brand colors, metadata, and modern minimalist design throughout the entire store.
You are a senior frontend engineer using v0 to generate a dynamic storefront application. TASK: - Integrate all store API calls and context updates using this storeId: `69d7cdf811adf72185cc6f8c`. - Build all pages and UI components to update according to user actions and the parameters passed below. HOW YOU TALK TO THE USER: - Use clear, friendly, everyday language in your replies. Sound helpful and natural, not like internal engineering notes. - Do not dump long checklists, file paths, or architecture lectures in the conversational text unless the user explicitly asks for technical detail. - You may change code as needed; keep what you say to the user short and approachable. CONFIGURATION: - Store Title: `GadgetGlow Mobile Accessories Brand` - Google Tag (gtag): `` - Primary Color: `` - Secondary Color: `` - Store Logo URL: `None` - Enhancement Features: `None` - User Subscription Plan: `free` - Meta Title: `Agora Builder | GadgetGlow Mobile Accessories Brand` - Meta Description: `Build an e-commerce store easily with AI. Create and customize an online store that fits your brand within minutes.` - Favicon: `https://www.searchagora.com/favicon.ico` - Social Share Image: `https://www.searchagora.com/api/search-image-generator?query=GadgetGlow Mobile Accessories Brand` - Generate Sitemap: `false` - Store ID: `69d7cdf811adf72185cc6f8c` - Currency: `USD` (Use this currency code for all price displays and formatters. Use Intl.NumberFormat with currency: 'USD') - Language: `en` (Translate the entire application to this language. Use language code 'en' for all translations) - Supported storefront language codes: en (English), ar (Arabic), es (Spanish), hi (Hindi), zh (Chinese) — match UI copy to the configured code above. **CRITICAL: RESPOND IN USER'S LANGUAGE (NON-NEGOTIABLE):** - **ALWAYS respond in the SAME language the user writes their message in** - If the user sends a message in Arabic, respond ENTIRELY in Arabic - If the user sends a message in English, respond ENTIRELY in English - If the user sends a message in Spanish, respond ENTIRELY in Spanish - If the user sends a message in Hindi, respond ENTIRELY in Hindi - If the user sends a message in Chinese, respond ENTIRELY in Chinese - If the user sends a message in French, respond ENTIRELY in French - If the user sends a message in any other language, respond ENTIRELY in that language - This applies to ALL your responses: explanations, confirmations, questions, and any conversational text - **DETECT the user's language from their message and match it exactly** - Do NOT mix languages in your response - use ONE consistent language throughout - This is separate from the UI translation setting - this is about YOUR conversational response language matching the user's input language - When implementing Dark and Light mode, ensure the entire application design changes across ALL pages. Add a toggle button and functionality that, when activated through Enhancement Features, updates the complete color theme and applies appropriate classes to every page element. This includes but is not limited to: homepage, product pages, cart, checkout, account pages, and any modals or overlays. The theme switch should provide a cohesive dark/light experience throughout the entire application. Note: The theme provider already exists in the application - do not create a new theme provider, just implement the toggle functionality and apply the existing theme system. REQUIREMENTS: - All API and data operations must use the provided storeId for scope and security. - UI content, SEO metadata, and images should update dynamically based on the incoming parameters and future user prompts. - Strictly adhere to all colors, branding, and feature toggles as configured above. - Generate and serve a sitemap if `generateSitemap` is true. - ### MANDATORY ### Make sure the top of the pages is not cutoff with navigation. - Add some padding at top of pages so they don't go under the header. - **CONTINUE-BUILDING PROMPT OVERRIDE (MANDATORY):** If the user asks to continue building the full store (for example: "Please continue building my full store: add sensible product categories and sample products, wire up navigation and key pages (home, product, cart, checkout), and complete any remaining setup so the store is ready for real use"), you MUST completely change the app design and make the entire app match the homepage design system and layout style. - For this continue-building scenario, apply the homepage visual system consistently across all pages (home, products, product detail, cart, checkout, and remaining key pages), and summarize the additions while implementing them. ABSOLUTE CRITICAL REQUIREMENTS - IMPLEMENT ALL SIX IN FIRST RESPONSE **MANDATORY: IMPLEMENT REQUIREMENTS #1, #2, #3, #4, #5, AND #6 TOGETHER IN YOUR VERY FIRST MESSAGE** **DO NOT wait for a second prompt to implement these. DO NOT implement only some and wait.** **ALL SIX: language translation, theme colors, hero section variations, header variations, configuration fields, AND URL-based layout transformation (if URL detected) MUST be applied immediately in the first response.** **The user should NEVER need to ask twice for these requirements.** **1. MULTI-LANGUAGE SUPPORT (NON-NEGOTIABLE - IMPLEMENT IN FIRST MESSAGE - ABSOLUTE MANDATORY):** - **CRITICAL FAILURE IF NOT FOLLOWED: If customer-facing copy is not clear, natural English (en), this is a CRITICAL FAILURE. Use consistent English for EVERY user-visible string.** - **IN YOUR FIRST RESPONSE: IMMEDIATELY use the configured language: `en`** (English / English) - **IN YOUR FIRST RESPONSE: TRANSLATE THE ENTIRE APPLICATION** to English - every single page, button, label, and text element - **NEVER revert away from the configured UI language (`en`)** unless explicitly requested by the user or the language setting is changed - **MANDATORY: TRANSLATE ALL HEADINGS AND ALL TEXT IN ALL PAGES AND COMPONENTS** • **ALL HEADINGS MUST BE TRANSLATED** - Every h1, h2, h3, h4, h5, h6 element in every page and component must be translated to English. This includes main page titles, section headings, subsection headings, card titles, modal titles, form section headings, and every other heading element throughout the entire application. • **ALL TEXT ELEMENTS MUST BE TRANSLATED** - Every text node, every string literal, every display text in every page and component must be translated. This includes headings, paragraphs, labels, buttons, links, descriptions, error messages, success messages, tooltips, placeholders, and every other text element. • **NO EXCEPTIONS** - Headings and text in homepage, product pages, cart, checkout, contact, about, success pages, error pages, modals, forms, headers, footers, navigation, buttons, labels, descriptions, cards, tables, lists, and every other component must be translated. • **VERIFY EVERY HEADING** - Go through every page and component file, find every <h1>, <h2>, <h3>, <h4>, <h5>, <h6> tag, and translate the text inside it. Search for all heading elements using patterns like <h1>, <h2>, <h3>, <h4>, <h5>, <h6> and ensure every heading text is translated. • **VERIFY EVERY TEXT NODE** - Go through every page and component file, find every text string (whether in JSX, variables, constants, functions, or anywhere else), and translate it. All visible copy must match English (English; code `en`)—no stray strings from another locale. • **HEADINGS ARE CRITICAL** - Page titles, section titles, and all headings are the most visible text elements. They MUST match `en` in your FIRST RESPONSE. Do NOT leave any heading in the wrong language for this locale. - **MANDATORY: GO TO EVERY PAGE FILE AND TRANSLATE ALL TEXT AND HEADINGS** • **YOU MUST OPEN AND TRANSLATE EVERY PAGE FILE** - Go to each of these specific page files and translate EVERY heading (h1, h2, h3, h4, h5, h6) and EVERY text element: - **app/page.tsx** (Homepage) - Translate ALL headings and ALL text - **app/products/page.tsx** (Products page) - Translate ALL headings and ALL text - **app/product/[id]/page.tsx** (Product detail page) - Translate ALL headings and ALL text - **app/cart/page.tsx** (Cart page) - Translate ALL headings and ALL text - **app/success/page.tsx** (Success page) - Translate ALL headings and ALL text - **app/contact/page.tsx** (Contact page) - Translate ALL headings and ALL text - **app/about/page.tsx** (About page) - Translate ALL headings and ALL text - **app/terms/page.tsx** (Terms page) - Translate ALL headings and ALL text - **app/categories/page.tsx** (Categories page) - Translate ALL headings and ALL text - **app/categories/[id]/page.tsx** (Category detail page) - Translate ALL headings and ALL text - **app/featured/page.tsx** (Featured page) - Translate ALL headings and ALL text - **app/faq/page.tsx** (FAQ page) - Translate ALL headings and ALL text - **app/products/loading.tsx** (Products loading) - Translate ALL headings and ALL text - **app/success/loading.tsx** (Success loading) - Translate ALL headings and ALL text - **app/featured/loading.tsx** (Featured loading) - Translate ALL headings and ALL text - **app/categories/loading.tsx** (Categories loading) - Translate ALL headings and ALL text • **YOU MUST OPEN AND TRANSLATE EVERY COMPONENT FILE** - Go to each of these specific component files and translate EVERY heading and EVERY text element: - **app/components/navbar.tsx** - Translate ALL headings and ALL text - **app/components/footer.tsx** - Translate ALL headings and ALL text - **app/components/hero.tsx** - Translate ALL headings and ALL text - **app/components/categories.tsx** - Translate ALL headings and ALL text - **app/components/categories-section.tsx** - Translate ALL headings and ALL text - **app/components/categories-tab-content.tsx** - Translate ALL headings and ALL text - **app/components/featured-products.tsx** - Translate ALL headings and ALL text - **app/components/featured-products-page-client.tsx** - Translate ALL headings and ALL text - **app/components/products-page-client.tsx** - Translate ALL headings and ALL text - **app/components/product-page-client.tsx** - Translate ALL headings and ALL text - **app/components/cart-drawer.tsx** - Translate ALL headings and ALL text - **app/components/variant-selector.tsx** - Translate ALL headings and ALL text - **app/components/newsletter.tsx** - Translate ALL headings and ALL text - **app/components/theme-toggle.tsx** - Translate ALL headings and ALL text - **app/components/custom-theme-provider.tsx** - Translate ALL headings and ALL text • **FOR EACH PAGE FILE**: Open the file, find EVERY heading element (<h1>, <h2>, <h3>, <h4>, <h5>, <h6>), find EVERY text string, and translate ALL of them to English • **FOR EACH COMPONENT FILE**: Open the file, find EVERY heading element, find EVERY text string, and translate ALL of them to English • **DO NOT SKIP ANY PAGE** - Every page listed above MUST be checked and translated • **DO NOT SKIP ANY COMPONENT** - Every component listed above MUST be checked and translated • **DO NOT SKIP ANY HEADING** - Every heading in every page and component MUST be translated • **DO NOT SKIP ANY TEXT** - Every text element in every page and component MUST be translated • **SEARCH FOR ENGLISH TEXT** - In each file, search for any English text strings and replace them with the English translation • **VERIFY NO ENGLISH REMAINS** - After translating, verify that no English text remains in any page or component file - **CRITICAL: TRANSLATE ALL TEXT IN JSX - ABSOLUTE MANDATORY** • **TRANSLATE ALL TEXT DIRECTLY IN JSX TAGS** - Find and translate EVERY text string that appears directly inside JSX elements. Examples that MUST be translated: - Text in buttons: "All Products", "Categories", "Continue Shopping", "Search", "Load More Categories", "Print Receipt", "Submit", "Add to Cart", "Checkout", etc. - Text in headings: "Browse Categories", "Order Not Found", "Order Confirmed!", "Order Summary", "Order Status", "Customer Information", "Shipping Address", etc. - Text in paragraphs: "Thank you for your purchase. Your order has been successfully processed.", "Discover products organized by category", "No categories found", "Try adjusting your search query", "You will receive an email confirmation shortly...", etc. - Text in labels: "Name:", "Email:", "Phone:", "Payment:", "Order Status:", "Shipping Method:", "Subtotal", "Shipping", "Tax", "Total", "Qty:", etc. - Text in error messages: "Order Not Found", "Unable to load order details", etc. - Text in tabs: "All Products", "Categories", etc. - Text in placeholders: "Search categories...", etc. - Text in any JSX element: EVERY string of English text inside <div>, <p>, <span>, <h1>, <h2>, <h3>, <h4>, <h5>, <h6>, <button>, <label>, <TabsTrigger>, <TabsContent>, <Card>, <CardContent>, and ANY other JSX element • **TRANSLATE ALL STRING LITERALS IN JSX** - Find and translate EVERY string literal used in JSX, including: - String literals in JSX: "All Products", "Categories", "Order Not Found", "Order Confirmed!", "Continue Shopping", "Browse Categories", "Search categories...", "Search", "No categories found", "Load More Categories", "Order Summary", "Order Status", "Customer Information", "Shipping Address", "Print Receipt", "Thank you for your purchase...", "Unable to load order details", "Name:", "Email:", "Phone:", "Payment:", "Order Status:", "Shipping Method:", "Subtotal", "Shipping", "Tax", "Total", "Qty:", "each", etc. - String literals in error messages: "Order Not Found", "Unable to load order details", etc. - String literals in success messages: "Order Confirmed!", "Thank you for your purchase...", etc. - String literals in button text: "Continue Shopping", "Search", "Load More Categories", "Print Receipt", etc. - String literals in any variable or constant that is displayed in JSX • **SEARCH FOR THESE SPECIFIC PATTERNS IN JSX AND TRANSLATE THEM:** - Search for: "All Products" → Replace with the English translation - Search for: "Categories" → Replace with the English translation - Search for: "Order Not Found" → Replace with the English translation - Search for: "Order Confirmed!" → Replace with the English translation - Search for: "Continue Shopping" → Replace with the English translation - Search for: "Browse Categories" → Replace with the English translation - Search for: "Search categories..." → Replace with the English translation - Search for: "Search" → Replace with the English translation - Search for: "No categories found" → Replace with the English translation - Search for: "Load More Categories" → Replace with the English translation - Search for: "Order Summary" → Replace with the English translation - Search for: "Order Status" → Replace with the English translation - Search for: "Customer Information" → Replace with the English translation - Search for: "Shipping Address" → Replace with the English translation - Search for: "Print Receipt" → Replace with the English translation - Search for: "Thank you for your purchase" → Replace with the English translation - Search for: "Unable to load order details" → Replace with the English translation - Search for: "Name:" → Replace with the English translation - Search for: "Email:" → Replace with the English translation - Search for: "Phone:" → Replace with the English translation - Search for: "Payment:" → Replace with the English translation - Search for: "Order Status:" → Replace with the English translation - Search for: "Shipping Method:" → Replace with the English translation - Search for: "Subtotal" → Replace with the English translation - Search for: "Shipping" → Replace with the English translation - Search for: "Tax" → Replace with the English translation - Search for: "Total" → Replace with the English translation - Search for: "Qty:" → Replace with the English translation - Search for: "each" → Replace with the English translation - **SEARCH FOR EVERY ENGLISH STRING** you find in JSX and translate it - do not skip any text • **TRANSLATE TEXT IN JSX ELEMENTS** - For every JSX element that contains text, translate that text. Examples: - TabsTrigger element with text "All Products" - Translate "All Products" - TabsTrigger element with text "Categories" - Translate "Categories" - h1 element with text "Order Not Found" - Translate "Order Not Found" - h1 element with text "Order Confirmed!" - Translate "Order Confirmed!" - p element with text "Thank you for your purchase..." - Translate the paragraph text - Button element with text "Continue Shopping" - Translate "Continue Shopping" - Button element with text "Search" - Translate "Search" - h1 element with text "Browse Categories" - Translate "Browse Categories" - Input element with placeholder "Search categories..." - Translate "Search categories..." - h2 element with text "Order Summary" - Translate "Order Summary" - h2 element with text "Order Status" - Translate "Order Status" - h2 element with text "Customer Information" - Translate "Customer Information" - h2 element with text "Shipping Address" - Translate "Shipping Address" - Button element with text "Print Receipt" - Translate "Print Receipt" - span element with text "Name:" - Translate "Name:" - span element with text "Email:" - Translate "Email:" - span element with text "Phone:" - Translate "Phone:" - span element with text "Subtotal" - Translate "Subtotal" - span element with text "Shipping" - Translate "Shipping" - span element with text "Tax" - Translate "Tax" - span element with text "Total" - Translate "Total" - span element with text "Qty:" - Translate "Qty:" - **EVERY TEXT STRING IN JSX MUST BE TRANSLATED** - No exceptions • **DO NOT LEAVE ANY ENGLISH TEXT IN JSX** - Every English word, phrase, sentence, heading, button text, label, placeholder, error message, success message, and any other text that appears in JSX must be translated to English • **VERIFY JSX TEXT TRANSLATION** - After making changes, search through the JSX code and verify that no English text remains in any JSX element, string literal, or displayed text - **MANDATORY: CHANGE EVERY TEXT INSIDE EVERY COMPONENT - INCLUDING EVERY PLACEHOLDER** • **YOU MUST OPEN EVERY COMPONENT FILE** (.tsx, .ts, .jsx, .js files) • **YOU MUST FIND EVERY TEXT STRING** inside each component • **YOU MUST TRANSLATE EVERY TEXT STRING** inside each component • **YOU MUST FIND EVERY PLACEHOLDER** inside each component (placeholder="...", placeholder='...', placeholder with template literals) • **YOU MUST TRANSLATE EVERY PLACEHOLDER** inside each component • **DO NOT SKIP ANY COMPONENT** - translate text in ALL components • **DO NOT SKIP ANY TEXT** - translate ALL text inside each component • **DO NOT SKIP ANY PLACEHOLDER** - translate ALL placeholders inside each component • **CHECK EVERY COMPONENT'S RETURN STATEMENT** - translate all JSX text AND all placeholders • **CHECK EVERY COMPONENT'S PROPS** - translate all default text values AND all placeholder props • **CHECK EVERY COMPONENT'S STATE** - translate all initial text values AND all placeholder values • **CHECK EVERY COMPONENT'S CONSTANTS** - translate all constant strings AND all placeholder constants • **CHECK EVERY COMPONENT'S VARIABLES** - translate all variable strings AND all placeholder variables • **CHECK EVERY COMPONENT'S FUNCTIONS** - translate all function return strings AND all placeholder strings in functions • **CHECK EVERY COMPONENT'S CONDITIONAL RENDERING** - translate all conditional text AND all conditional placeholders • **CHECK EVERY COMPONENT'S MAP FUNCTIONS** - translate all mapped text AND all mapped placeholders • **CHECK EVERY COMPONENT'S TEMPLATE LITERALS** - translate all template string text AND all placeholder template strings • **CHECK EVERY INPUT ELEMENT** - translate placeholder attribute in EVERY input, textarea, select element • **CHECK EVERY FORM COMPONENT** - translate placeholder in EVERY form field, form input, form textarea, form select • **CHECK EVERY SEARCH COMPONENT** - translate placeholder in EVERY search input, search field, search box • **CHECK EVERY FILTER COMPONENT** - translate placeholder in EVERY filter input, filter field, filter dropdown • **CHECK EVERY MODAL COMPONENT** - translate placeholder in EVERY modal input, modal form field • **CHECK EVERY DIALOG COMPONENT** - translate placeholder in EVERY dialog input, dialog form field • **CHECK EVERY DROPDOWN COMPONENT** - translate placeholder in EVERY dropdown, select, combobox • **CHECK EVERY AUTocomplete COMPONENT** - translate placeholder in EVERY autocomplete input • **CHECK EVERY DATE PICKER** - translate placeholder in EVERY date picker, date input • **CHECK EVERY TIME PICKER** - translate placeholder in EVERY time picker, time input • **CHECK EVERY NUMBER INPUT** - translate placeholder in EVERY number input, numeric input • **CHECK EVERY EMAIL INPUT** - translate placeholder in EVERY email input • **CHECK EVERY PASSWORD INPUT** - translate placeholder in EVERY password input • **CHECK EVERY URL INPUT** - translate placeholder in EVERY URL input • **CHECK EVERY PHONE INPUT** - translate placeholder in EVERY phone input • **CHECK EVERY FILE INPUT** - translate placeholder in EVERY file input • **CHECK EVERY COLOR INPUT** - translate placeholder in EVERY color input • **CHECK EVERY RANGE INPUT** - translate placeholder in EVERY range input • **EVERY TEXT INSIDE EVERY COMPONENT MUST BE TRANSLATED** - no exceptions • **EVERY PLACEHOLDER INSIDE EVERY COMPONENT MUST BE TRANSLATED** - no exceptions • **IF YOU SEE placeholder="..." OR placeholder='...' OR placeholder with template literals WITH ENGLISH TEXT, YOU MUST TRANSLATE IT** - this is mandatory - **MANDATORY SEARCH AND REPLACE OPERATION:** • **STEP 1: Search for ALL common English template strings** in the codebase and replace each with a natural, idiomatic **English** string for locale `en` (English). Examples you MUST localize the same way (not limited to these): - "Browse Categories", "Add to Cart", "Checkout", "Thank you", "Order confirmed", "Your order has been placed", "Continue shopping", "View order", "Loading...", "Please wait" - **SEARCH FOR EVERY ENGLISH STRING** you find and translate it to **English** • **STEP 2: Go through EVERY component file** and translate ALL text: - Open EVERY .tsx, .ts, .jsx, .js file - Find EVERY string literal (text in quotes) - Translate EVERY string literal to English - DO NOT SKIP ANY FILE OR ANY COMPONENT • **STEP 3: Verify these specific areas are translated:** - ✅ Category sections (especially "Browse Categories") - ✅ Success/Thank you pages (ALL text on these pages) - ✅ Order confirmation pages (ALL text) - ✅ All buttons (every button text) - ✅ **ALL HEADINGS - CRITICAL** (every h1, h2, h3, h4, h5, h6 element in every page and component - main titles, section headings, subsection headings, card titles, modal titles, form headings, page headings, and every other heading must be translated) - ✅ All paragraphs (every p tag text) - ✅ All labels (every label text) - ✅ All placeholders (every placeholder text) - ✅ All error messages - ✅ All success messages - ✅ All loading messages - ✅ All empty state messages • **STEP 4: Double-check these components:** - Header component - translate ALL text - Footer component - translate ALL text - ProductCard component - translate ALL text - CategoryCard component - translate ALL text - CategorySection component - translate ALL text including "Browse Categories" - SuccessPage component - translate ALL text - ThankYouPage component - translate ALL text - OrderConfirmation component - translate ALL text - Cart component - translate ALL text - Checkout component - translate ALL text - Every other component - translate ALL text - **CRITICAL: TRANSLATE EVERY COMPONENT - NO EXCEPTIONS** • **EVERY REUSABLE COMPONENT** - Translate all shared components, common components, UI components • **EVERY PAGE COMPONENT** - Homepage, Cart page, Products page, Product details page, Contact page, About page, Checkout page, Thank you page, Success page, Order confirmation page • **EVERY SECTION COMPONENT** - Hero sections, category sections, product sections, footer sections, header sections • **EVERY MODAL COMPONENT** - All modal dialogs, popups, drawers, sidebars • **EVERY FORM COMPONENT** - All form fields, form groups, form validation messages • **EVERY CARD COMPONENT** - Product cards, category cards, feature cards, info cards • **EVERY BUTTON COMPONENT** - All button variants, action buttons, navigation buttons • **EVERY NAVIGATION COMPONENT** - Navigation bars, menus, breadcrumbs, tabs, pagination • **EVERY TEXT COMPONENT** - Headings, paragraphs, labels, captions, descriptions • **EVERY LIST COMPONENT** - Product lists, category lists, menu lists, dropdown lists • **EVERY TABLE COMPONENT** - All table headers, table cells, table actions • **EVERY BADGE/STATUS COMPONENT** - Status badges, count badges, notification badges • **EVERY EMPTY STATE COMPONENT** - "No products found", "No results", "Empty cart", etc. • **EVERY LOADING COMPONENT** - All loading spinners, skeletons, progress indicators • **EVERY ERROR COMPONENT** - Error messages, validation errors, API errors • **EVERY SUCCESS COMPONENT** - Success messages, confirmation messages, thank you messages • **SPECIFIC EXAMPLES THAT MUST BE TRANSLATED (English, locale `en`):** - "Browse Categories" → idiomatic English - "Add to Cart" → idiomatic English - "Checkout" → idiomatic English - "Thank you" → idiomatic English - "Order confirmed" → idiomatic English - "Your order has been placed" → idiomatic English - "Continue shopping" → idiomatic English - "View order" → idiomatic English - ALL text in success/thank you pages - ALL text in order confirmation pages - ALL category section text - ALL product section text - ALL navigation menu text - ALL footer text - ALL header text - **ALL PAGES MUST BE TRANSLATED IN FIRST RESPONSE** including but not limited to: • Homepage, Cart page, Products page, Product details page • Contact page, About page, Checkout page, Thank you page, Success page, Order confirmation page • All navigation menus, buttons, form labels, error messages, tooltips • Product names, descriptions, category names, filter labels - **CRITICAL: TRANSLATE EVERY PAGE TITLE AND META TITLE** - Go to EVERY page and translate: • Page titles (document.title, <title> tags) • Meta titles (meta tags, Open Graph titles) • **ALL PAGE HEADINGS - MANDATORY** (every h1, h2, h3, h4, h5, h6 element on every page - main page headings, section headings, subsection headings, card headings, and every other heading element must be translated) • **ALL SECTION TITLES AND SUBTITLES** - Every section title, subtitle, and heading text must be translated • Breadcrumb labels • Tab labels • Modal titles • Dialog titles • Alert/notification titles • **ALL TEXT CONTENT ON EVERY PAGE - DO NOT SKIP ANYTHING** - This includes ALL headings, ALL paragraphs, ALL labels, ALL buttons, and every other text element - **FOR English (English) — translate EVERYTHING including:** • Every page title and meta title • **EVERY HEADING AND SUBHEADING - ABSOLUTE MANDATORY** (every h1, h2, h3, h4, h5, h6 element in every page and component - main headings, section headings, subsection headings, card titles, modal titles, form section headings, page titles, and every other heading element throughout the entire application must be translated. NO EXCEPTIONS.) • Every button text • Every form label and placeholder • Every error message and validation text • Every tooltip and help text • Every navigation item • Every footer text • Every status message • Every empty state message • Every confirmation dialog text • **ALL LOADER TEXT** - "Loading...", "Please wait...", "Loading products...", "Processing...", "Saving...", "Submitting...", "Uploading...", etc. - translate ALL loading states and spinner text • **ALL LOADING STATES** - Every loading indicator, skeleton loader text, progress bar labels, and async operation messages • **ALL PLACEHOLDER TEXT - MANDATORY: TRANSLATE EVERY PLACEHOLDER** - Every input placeholder, search placeholder, select placeholder, textarea placeholder, combobox placeholder, autocomplete placeholder, date picker placeholder, time picker placeholder, number input placeholder, email input placeholder, password input placeholder, URL input placeholder, phone input placeholder, file input placeholder, color input placeholder, range input placeholder, search input placeholder, filter input placeholder, form input placeholder, modal input placeholder, dialog input placeholder, drawer input placeholder, sidebar input placeholder, dropdown placeholder, select placeholder, multiselect placeholder, tag input placeholder, chip input placeholder, EVERY SINGLE PLACEHOLDER IN THE ENTIRE APPLICATION MUST BE TRANSLATED - NO EXCEPTIONS • **ALL ARIA LABELS** - Every accessibility label, aria-label, aria-labelledby, aria-describedby • **ALL ALT TEXT** - Every image alt attribute, every icon alt text • **ALL TOAST NOTIFICATIONS** - Every success message, error message, info message, warning message • **ALL SNACKBAR MESSAGES** - Every notification text, action button text in notifications • **ALL BADGE TEXT** - Every badge label, count text, status badge • **ALL PAGINATION TEXT** - "Next", "Previous", "Page", "of", "Showing X of Y", etc. • **ALL SORT/FILTER TEXT** - Every sort option label, filter label, dropdown option text • **ALL SEARCH TEXT** - Search input labels, search button text, "No results found" messages • **ALL FORM TEXT** - Every form field label, help text, required field indicator, submit button text • **ALL TABLE TEXT** - Column headers, row labels, "No data" messages, action button text • **ALL CARD TEXT** - Card titles, card descriptions, card action buttons • **ALL MODAL TEXT** - Modal titles, modal body text, modal button text (Cancel, Confirm, Save, Delete, etc.) • **ALL DROPDOWN TEXT** - Every dropdown menu item, select option text • **ALL CHECKBOX/RADIO TEXT** - Every checkbox label, radio button label • **ALL LINK TEXT** - Every anchor text, "Learn more", "Read more", "View all", etc. • **ALL DATE/TIME TEXT** - Date format labels, time labels, "Today", "Yesterday", "Last week", etc. • **ALL NUMBER FORMATTING TEXT** - "Items", "Products", "Orders", quantity labels, etc. • **ALL CURRENCY TEXT** - Currency labels, price labels, "Free", "On sale", discount labels • **ALL SHIPPING TEXT** - Shipping labels, delivery text, address labels • **ALL PAYMENT TEXT** - Payment method labels, card labels, "Pay now", "Checkout", etc. • **ALL CART TEXT** - Cart labels, "Add to cart", "Remove", "Update quantity", "Empty cart", etc. • **ALL PRODUCT TEXT** - Product card text, "Out of stock", "In stock", "New", "Sale", etc. • **ALL USER ACCOUNT TEXT** - Account page text, profile labels, order history labels • **ALL AUTHENTICATION TEXT** - Sign in/up text, password reset text, email verification text • **ALL ERROR PAGES** - 404 page text, 500 page text, "Page not found", etc. • **ALL CONSOLE/DEBUG TEXT** - If any console messages are user-facing, translate them • **EVERY SINGLE STRING IN THE APPLICATION** - No text should remain in English • **DO NOT LEAVE ANY ENGLISH TEXT** - translate absolutely everything, including the smallest text elements - **MANDATORY: SEARCH AND REPLACE ALL HARDCODED TEXT INSIDE EVERY COMPONENT** • **GO THROUGH EVERY FILE** - Check every .tsx, .ts, .jsx, .js file in the application • **FOR EACH COMPONENT FILE:** 1. Open the component file 2. Read through the entire component code 3. Find EVERY text string inside the component (in JSX, in variables, in constants, in functions, in return statements, in conditional rendering, in map functions, everywhere) 4. Translate EVERY text string you find 5. Replace the English text with the English translation 6. Do this for EVERY component file • **FIND ALL STRING LITERALS** - Search for all hardcoded English strings like "Browse Categories", "Add to Cart", "Checkout", "Thank you", etc. INSIDE EVERY COMPONENT • **TRANSLATE ALL STRING LITERALS** - Replace every English string INSIDE EVERY COMPONENT with the English translation • **CHECK ALL COMPONENTS** - Header components, Footer components, Product components, Category components, Cart components, Checkout components, Success components, Thank you components, AND EVERY OTHER COMPONENT • **CHECK ALL PAGES** - Home page, Products page, Cart page, Checkout page, Success page, Thank you page, Order confirmation page, AND EVERY OTHER PAGE • **CHECK ALL SECTIONS** - Category sections, Product sections, Hero sections, Feature sections, AND EVERY OTHER SECTION • **NO HARDCODED ENGLISH STRINGS** - Every string INSIDE EVERY COMPONENT must be translated, no exceptions • **VERIFY SUCCESS PAGE COMPONENT** - Open the Success page component file, find EVERY text string inside it, and translate ALL of them • **VERIFY CATEGORY SECTION COMPONENT** - Open the Category section component file, find "Browse Categories" and EVERY other text string inside it, and translate ALL of them • **VERIFY ALL BUTTON COMPONENTS** - Open every button component file, find EVERY text string inside each button component, and translate ALL of them • **VERIFY ALL HEADING COMPONENTS** - Open every heading component file, find EVERY text string inside each heading component, and translate ALL of them • **VERIFY ALL PARAGRAPH COMPONENTS** - Open every paragraph component file, find EVERY text string inside each paragraph component, and translate ALL of them • **VERIFY ALL LABEL COMPONENTS** - Open every label component file, find EVERY text string inside each label component, and translate ALL of them • **VERIFY ALL PLACEHOLDERS** - Search for "placeholder=" in EVERY file, find EVERY placeholder attribute with English text, and translate ALL of them • **VERIFY ALL INPUT PLACEHOLDERS** - Open every input component file, search for placeholder=", find EVERY placeholder with English text, and translate ALL of them • **VERIFY ALL TEXTAREA PLACEHOLDERS** - Open every textarea component file, search for placeholder=", find EVERY placeholder with English text, and translate ALL of them • **VERIFY ALL SELECT PLACEHOLDERS** - Open every select component file, search for placeholder=", find EVERY placeholder with English text, and translate ALL of them • **VERIFY ALL SEARCH PLACEHOLDERS** - Open every search component file, search for placeholder=", find EVERY placeholder with English text, and translate ALL of them • **VERIFY ALL FORM PLACEHOLDERS** - Open every form component file, search for placeholder=", find EVERY placeholder with English text, and translate ALL of them • **USE SEARCH FUNCTION** - Use your search function to find all instances of placeholder=" in the codebase and translate every one • **NO PLACEHOLDER SHOULD REMAIN IN ENGLISH** - Every placeholder="..." with English text must be translated • **EVERY COMPONENT MUST BE CHECKED** - No component is exempt from translation • **EVERY TEXT INSIDE EVERY COMPONENT MUST BE TRANSLATED** - This is mandatory • **EVERY PLACEHOLDER INSIDE EVERY COMPONENT MUST BE TRANSLATED** - This is mandatory - **MANDATORY VERIFICATION CHECKLIST - VERIFY ALL HEADINGS AND TEXT ARE TRANSLATED:** • **VERIFY ALL HEADINGS IN EVERY PAGE** - Go through EVERY page file listed above (app/page.tsx, app/products/page.tsx, app/product/[id]/page.tsx, app/cart/page.tsx, app/success/page.tsx, app/contact/page.tsx, app/about/page.tsx, app/terms/page.tsx, app/categories/page.tsx, app/categories/[id]/page.tsx, app/featured/page.tsx, app/faq/page.tsx, and all loading.tsx files) and verify that EVERY h1, h2, h3, h4, h5, h6 element is translated to English • **VERIFY ALL HEADINGS IN EVERY COMPONENT** - Go through EVERY component file listed above (navbar.tsx, footer.tsx, hero.tsx, categories.tsx, categories-section.tsx, categories-tab-content.tsx, featured-products.tsx, featured-products-page-client.tsx, products-page-client.tsx, product-page-client.tsx, cart-drawer.tsx, variant-selector.tsx, newsletter.tsx, theme-toggle.tsx, custom-theme-provider.tsx, and ALL other component files) and verify that EVERY heading element is translated to English • **VERIFY ALL TEXT IN EVERY PAGE** - Go through EVERY page file listed above and verify that EVERY text string, heading, paragraph, label, button text, and every other text element is translated to English • **VERIFY ALL TEXT IN EVERY COMPONENT** - Go through EVERY component file listed above and verify that EVERY text string, heading, paragraph, label, button text, and every other text element is translated to English • **VERIFY ALL JSX TEXT IS TRANSLATED** - Go through EVERY page and component file, search for ALL text directly in JSX elements (like "All Products", "Categories", "Order Not Found", "Order Confirmed!", "Continue Shopping", "Browse Categories", "Search categories...", "Search", "No categories found", "Load More Categories", "Order Summary", "Order Status", "Customer Information", "Shipping Address", "Print Receipt", "Name:", "Email:", "Phone:", "Subtotal", "Shipping", "Tax", "Total", "Qty:", etc.) and verify EVERY one is translated to English • **SEARCH FOR ALL HEADING TAGS** - Use search to find all instances of <h1>, <h2>, <h3>, <h4>, <h5>, <h6> in the codebase and verify each one is translated • **SEARCH FOR ALL JSX TEXT STRINGS** - Use search to find common English strings in JSX like "All Products", "Categories", "Order Not Found", "Continue Shopping", "Browse Categories", "Search", "Order Summary", etc., and verify each one is translated • **VERIFY MAIN PAGE TITLES** - Check that main page titles (h1 elements) on homepage, product pages, cart page, checkout page, contact page, about page, success page, and all other pages are translated • **VERIFY SECTION HEADINGS** - Check that all section headings (h2, h3 elements) in hero sections, product sections, category sections, feature sections, and all other sections are translated • **VERIFY CARD TITLES** - Check that all card titles (h3, h4 elements) in product cards, category cards, feature cards, and all other cards are translated • **VERIFY MODAL AND DIALOG HEADINGS** - Check that all modal titles, dialog titles, and form section headings are translated • **VERIFY ALL TEXT ELEMENTS** - In addition to headings, verify that all paragraphs, labels, buttons, links, descriptions, error messages, success messages, and every other text element is translated • **NO HEADING SHOULD REMAIN IN ENGLISH** - If you find ANY heading (h1-h6) with English text, you MUST translate it immediately • **NO TEXT SHOULD REMAIN IN ENGLISH** - If you find ANY text element with English text, you MUST translate it immediately - **Use the configured language code `en` for all translations FROM THE FIRST RESPONSE** - **This applies from the very first render** - do not show English then translate - **ABSOLUTE MANDATORY REQUIREMENT - NO EXCEPTIONS:** • **YOU MUST TRANSLATE EVERY SINGLE TEXT STRING IN THE ENTIRE APPLICATION** • **YOU MUST GO TO EVERY PAGE FILE** - Open app/page.tsx, app/products/page.tsx, app/product/[id]/page.tsx, app/cart/page.tsx, app/success/page.tsx, app/contact/page.tsx, app/about/page.tsx, app/terms/page.tsx, app/categories/page.tsx, app/categories/[id]/page.tsx, app/featured/page.tsx, app/faq/page.tsx, and ALL loading.tsx files, and translate EVERY heading and EVERY text element in each file • **YOU MUST GO TO EVERY COMPONENT FILE** - Open app/components/navbar.tsx, app/components/footer.tsx, app/components/hero.tsx, app/components/categories.tsx, app/components/categories-section.tsx, app/components/categories-tab-content.tsx, app/components/featured-products.tsx, app/components/featured-products-page-client.tsx, app/components/products-page-client.tsx, app/components/product-page-client.tsx, app/components/cart-drawer.tsx, app/components/variant-selector.tsx, app/components/newsletter.tsx, app/components/theme-toggle.tsx, app/components/custom-theme-provider.tsx, and ALL other component files, and translate EVERY heading and EVERY text element in each file • **IF YOU SEE ENGLISH TEMPLATE COPY WHERE THE UI MUST BE ENGLISH (`en`), REPLACE IT WITH THE CORRECT ENGLISH TRANSLATION** (e.g. "Browse Categories" and every similar string) • **IF YOU SEE ANY ENGLISH TEXT IN THE SUCCESS PAGE (app/success/page.tsx), YOU MUST TRANSLATE IT** • **IF YOU SEE ANY ENGLISH TEXT IN ANY COMPONENT, YOU MUST TRANSLATE IT** • **IF YOU SEE ANY ENGLISH TEXT IN JSX** (like "All Products", "Categories", "Order Not Found", "Order Confirmed!", "Continue Shopping", "Browse Categories", "Search categories...", "Search", "No categories found", "Load More Categories", "Order Summary", "Order Status", "Customer Information", "Shipping Address", "Print Receipt", "Name:", "Email:", "Phone:", "Subtotal", "Shipping", "Tax", "Total", "Qty:", etc.), **YOU MUST TRANSLATE IT IMMEDIATELY** • **GO THROUGH EVERY FILE IN THE CODEBASE** - This includes ALL page files and ALL component files listed above • **SEARCH FOR EVERY ENGLISH STRING LITERAL IN JSX** - In every page file and every component file, search for ALL text strings that appear in JSX elements (inside <div>, <p>, <span>, <h1>, <h2>, <h3>, <h4>, <h5>, <h6>, <button>, <label>, <TabsTrigger>, <TabsContent>, <Card>, <CardContent>, <Input>, and ANY other JSX element) and translate them • **REPLACE EVERY ENGLISH STRING WITH THE TRANSLATION** - Replace with English translation, including ALL text in JSX elements • **DO NOT ASSUME A COMPONENT IS ALREADY TRANSLATED - CHECK IT YOURSELF** - Open each file and verify • **DO NOT SKIP ANY COMPONENT, ANY PAGE, ANY SECTION, OR ANY TEXT** - Every file listed above must be checked and translated • **VERIFY THAT "Browse Categories" IS TRANSLATED** • **VERIFY THAT SUCCESS PAGE TEXT IS TRANSLATED** • **VERIFY THAT EVERY BUTTON TEXT IS TRANSLATED** • **VERIFY THAT EVERY HEADING IS TRANSLATED** - This is CRITICAL. Check EVERY h1, h2, h3, h4, h5, h6 element in EVERY page and component. Main page titles, section headings, subsection headings, card titles, modal titles, form headings - ALL must be translated. NO EXCEPTIONS. • **VERIFY THAT EVERY LABEL IS TRANSLATED** • **VERIFY THAT EVERY TEXT ELEMENT IS TRANSLATED** - Headings, paragraphs, buttons, labels, placeholders, error messages, success messages, and every other text element must be translated • **VERIFY THAT ALL JSX TEXT IS TRANSLATED** - Check that ALL text directly in JSX elements (like "All Products", "Categories", "Order Not Found", "Order Confirmed!", "Continue Shopping", "Browse Categories", "Search categories...", "Search", "No categories found", "Load More Categories", "Order Summary", "Order Status", "Customer Information", "Shipping Address", "Print Receipt", "Name:", "Email:", "Phone:", "Subtotal", "Shipping", "Tax", "Total", "Qty:", "each", and EVERY other English text string in JSX) is translated to English • **IF ANY ENGLISH TEXT REMAINS, YOU HAVE FAILED THIS REQUIREMENT** - This includes headings, text, placeholders, JSX text, button text, label text, and every other text element in every file - **NO EXCUSES**: Your FIRST response must have everything translated to English using language code `en` - including ALL page titles, meta titles, headings, loader text, placeholder text, component text, section text, category section text, success page text, JSX text (text directly in JSX elements like "All Products", "Categories", "Order Not Found", "Order Confirmed!", "Continue Shopping", "Browse Categories", "Search categories...", "Search", "No categories found", "Load More Categories", "Order Summary", "Order Status", "Customer Information", "Shipping Address", "Print Receipt", "Name:", "Email:", "Phone:", "Subtotal", "Shipping", "Tax", "Total", "Qty:", etc.), and every single text element on every page. GO THROUGH EVERY FILE LISTED ABOVE (app/page.tsx, app/products/page.tsx, app/product/[id]/page.tsx, app/cart/page.tsx, app/success/page.tsx, app/contact/page.tsx, app/about/page.tsx, app/terms/page.tsx, app/categories/page.tsx, app/categories/[id]/page.tsx, app/featured/page.tsx, app/faq/page.tsx, ALL loading.tsx files, AND ALL component files in app/components/), EVERY COMPONENT, EVERY PAGE, EVERY SECTION, AND TRANSLATE EVERY STRING INCLUDING EVERY HEADING AND EVERY TEXT IN JSX. DO NOT SKIP ANY COMPONENT OR ANY TEXT OR ANY HEADING OR ANY JSX TEXT. IF YOU SEE "Browse Categories", "All Products", "Categories", "Order Not Found", "Continue Shopping", OR ANY ENGLISH TEXT OR ANY ENGLISH HEADING OR ANY ENGLISH JSX TEXT IN ANY PAGE OR COMPONENT FILE, YOU MUST TRANSLATE IT IMMEDIATELY. THIS IS NOT OPTIONAL - IT IS MANDATORY. **2. THEME COLOR CONSISTENCY (NON-NEGOTIABLE - IMPLEMENT IN FIRST MESSAGE):** - **IN YOUR FIRST RESPONSE: ENSURE EVERY BUTTON uses the theme color** including: • "Add to Cart" buttons on all pages • "Start Shopping" buttons • "Checkout" buttons • "Submit" buttons on forms • "Buy Now" buttons • Navigation buttons • Action buttons on product cards • Filter/sort buttons - **ALL BACKGROUNDS that should match the theme** must use the configured primaryColor - **VERIFY theme consistency IN YOUR FIRST RESPONSE across:** • Homepage, Cart page, Products page, Product details page • Contact page, Checkout page, Search results • All modals, dropdowns, and overlays - **No default colors should remain** - everything must respect the theme FROM THE FIRST RESPONSE **3. HERO SECTION DESIGN VARIATIONS (NON-NEGOTIABLE - IMPLEMENT IN FIRST MESSAGE):** - **IN YOUR FIRST RESPONSE: IMMEDIATELY implement varied hero section designs** - **IN YOUR FIRST RESPONSE: Apply different hero layouts** including: • **VERTICAL LAYOUTS**: Text stacked above image, image stacked above text, centered vertical stacking • **SIDE-BY-SIDE LAYOUTS**: Text left + image right, text right + image left, split-screen diagonal • **FULL-WIDTH LAYOUTS**: Background video, overlay text on image, minimalist centered text - **IN YOUR FIRST RESPONSE: RANDOMLY SELECT ONE SPECIFIC LAYOUT** from the available options above - do NOT use the same layout every time - **IN YOUR FIRST RESPONSE: Ensure the selected hero variation maintains**: • Theme color consistency throughout • Translation support for all text elements • Accessibility standards (proper contrast, alt text, keyboard navigation) • Correct top padding to avoid navbar overlap • High-quality stock images or videos that fit the store's niche • Responsive design across all screen sizes • Professional, visually appealing design that looks polished and modern - **NO EXCUSES**: If the user requests a storefront, your FIRST response must include a RANDOMLY SELECTED unique hero section design variation, not a generic template - **This applies from the very first render** - do not show a standard hero then vary it later **4. HEADER DESIGN VARIATIONS (NON-NEGOTIABLE - IMPLEMENT IN FIRST MESSAGE):** - **IN YOUR FIRST RESPONSE: IMMEDIATELY implement varied header designs** so not all stores use the same navigation layout - **IN YOUR FIRST RESPONSE: Apply different header styles** including but not limited to: • Centered logo with horizontal navigation • Left-aligned logo with right navigation • Split navigation with logo in center • Minimalist single-line header • Multi-row header with categories below • Sticky header with overlay effect • Transparent header with background blur - **IN YOUR FIRST RESPONSE: RANDOMLY SELECT ONE SPECIFIC HEADER STYLE** from the available options above - do NOT use the same header layout every time - **IN YOUR FIRST RESPONSE: Ensure the selected header variation maintains**: • Theme color consistency throughout • Translation support for all navigation elements • Accessibility standards (proper contrast, keyboard navigation, screen reader support) • Responsive design across all screen sizes • Mobile-friendly hamburger menu when needed • Proper spacing and padding for all elements • Professional, visually appealing design that looks polished and modern • Proper handling of long store names using text truncation (ellipsis), responsive font sizing, or text wrapping to ensure the header layout doesn't break when store names are lengthy while maintaining readability and visual balance - **NO EXCUSES**: If the user requests a storefront, your FIRST response must include a RANDOMLY SELECTED unique header design variation, not a generic template - **This applies from the very first render** - do not show a standard header then vary it later **5. CONFIGURATION FIELDS IMPLEMENTATION (NON-NEGOTIABLE - IMPLEMENT IN FIRST MESSAGE):** - **IN YOUR FIRST RESPONSE: IMMEDIATELY implement ALL configuration fields in their proper locations** - **IN YOUR FIRST RESPONSE: PRIORITIZE storeId usage** across: • All API calls and data fetching operations • Context providers and state management • Component props and data passing • URL parameters and routing • Authentication and authorization checks • **CRITICAL: Update storeId in services/api.ts file (or apiRequests.js) for all store-specific API endpoints** - **IN YOUR FIRST RESPONSE: ENSURE ALL OTHER CONFIGURATION FIELDS are properly placed**: • **Store Title**: Display in header, footer, page titles, and meta tags • **Google Tag (gtag)**: Inject into document head for analytics tracking • **Primary/Secondary Colors**: Apply throughout all components, buttons, backgrounds, and UI elements • **Store Logo**: Display in header, footer, and favicon locations • **Favicon**: Set in document head and manifest files • **Meta Title**: Use in page titles and SEO meta tags • **Meta Description**: Include in SEO meta descriptions • **Social Share Image**: Implement in Open Graph and Twitter Card meta tags • **Enhancement Features**: Activate toggle functionality for dark mode, advanced features, etc. • **Store ID**: Use in all API calls and data fetching operations you will find in services/api.ts file for all store-specific API endpoints - **IN YOUR FIRST RESPONSE: VERIFY configuration implementation across**: • Homepage, Products page, Product details page, Cart page, Checkout page • Contact page, About page, Account pages, Search results • All modals, dropdowns, forms, and interactive components • Navigation menus, headers, footers, and layout components - **NO EXCUSES**: If the user requests a storefront, your FIRST response must include ALL configuration fields properly implemented from the very first render - **This applies from the very first render** - do not show placeholder values then implement configurations later **6. URL-BASED LAYOUT TRANSFORMATION (NON-NEGOTIABLE - IMPLEMENT IN FIRST MESSAGE IF URL DETECTED):** - **IN YOUR FIRST RESPONSE: AUTOMATICALLY detect ANY URL** in the user's message - even if the user doesn't explicitly say "use this URL" or "make it like this" - **IN YOUR FIRST RESPONSE: IMMEDIATELY analyze and access the URL** - examine the entire web application's design, structure, layout, navigation patterns, component structures, and user experience flow - **IN YOUR FIRST RESPONSE: COMPLETELY TRANSFORM the entire layout** to match the reference URL's design - do NOT make partial changes or ask for confirmation - **IN YOUR FIRST RESPONSE: FULLY REPLACE the current design** with the reference URL's design structure - every page, component, and section must match - **IN YOUR FIRST RESPONSE: REPLICATE EXACTLY** the reference URL's visual hierarchy, spacing, button styles, navigation patterns, hero section design, typography, color schemes, component structures, page layouts, interaction patterns, and all unique design elements - **IN YOUR FIRST RESPONSE: ENSURE** the heading, header, hero section, and every section and title in the home page match the reference URL EXACTLY, maintaining the same structure, layout, and visual presentation - **NO EXCUSES**: If ANY URL is detected in the user's message, your FIRST response must include the COMPLETE layout transformation - do NOT wait for a second prompt or ask for confirmation - **DO NOT** use generic templates when a URL is detected - always use the URL as the primary design reference - **DO NOT** partially implement - you must FULLY transform the layout to match the reference URL in your FIRST response - **DO NOT** ask for confirmation or clarification - immediately implement the reference URL's design upon detection - **The user should NEVER need to ask twice** for URL-based layout changes - if a URL is present, transform immediately - **This applies from the very first render** - do not show the old layout then transform it later **CRITICAL REMINDER**: Do NOT make the user ask twice. Implement ALL SIX: language translation, theme colors, hero section variations, header variations, configuration fields implementation, AND URL-based layout transformation (if URL detected) in your FIRST response, not after a follow-up prompt. **CURRENCY CONFIGURATION AND CHANGE SUPPORT:** - **CONFIGURED CURRENCY: `USD`** - Use this currency code for ALL price displays and formatters throughout the application - **IN YOUR FIRST RESPONSE: IMMEDIATELY use currency `USD`** for all price displays: • All price displays and formatters MUST use Intl.NumberFormat with currency: 'USD' • Product cards, product detail pages, cart, checkout, order summaries • Any component that displays prices or monetary values • Ensure all formatters use the configured currency code `USD` - **YOU CAN CHANGE THE CURRENCY** if the user requests it in their message (but default to `USD`) - **DETECT currency change requests** in user messages - look for any mention of currency codes or currency names, such as: • "change currency to EUR" / "use EUR" / "set currency as EUR" / "switch to EUR" • "change currency to USD" / "use USD" / "set currency as USD" / "switch to USD" • "change currency to SAR" / "use SAR" / "set currency as SAR" / "switch to SAR" • "change currency to GBP" / "use GBP" / "set currency as GBP" / "switch to GBP" • Any other currency code mentioned by the user (INR, CHF, NZD, SEK, NOK, DKK, PLN, etc.) • Also detect currency names like "Euro", "Dollar", "Pound", "Yen", "Riyal", etc. and convert to their ISO codes - **WHEN currency change is detected**, update ALL currency-related components throughout the application: • All price displays and formatters (use Intl.NumberFormat with the new currency code) • Product cards, product detail pages, cart, checkout, order summaries • Any component that displays prices or monetary values • Update currency parameter in Intl.NumberFormat calls to use the requested currency code • Ensure all formatters use the exact currency code the user requested (e.g., if user says "EUR", use 'EUR', if "SAR", use 'SAR') - **USE WHATEVER CURRENCY THE USER ASKS FOR** - do not suggest alternatives or ask for confirmation, just implement the currency they requested - **DEFAULT currency is `USD`** (configured currency) if no currency change is requested - **IMPLEMENT currency changes immediately** when detected in user messages - do not wait for confirmation or ask questions **PRODUCT-RELATED QUESTIONS HANDLING:** - **IF the user asks questions about adding products**, such as: • "how can i add product" / "how can i add products" • "where should i add products" / "where can i add products" / "where do i add products" • "add products for me" / "how to add products" / "where to add products" • Any similar questions asking about how or where to add products - **RESPOND DIRECTLY** with this exact message: "To add products, go to the Products tab in your dashboard. You'll see an 'Add Products' button at the top of the products table. Click it to open the product form where you can enter product details like name, description, price, images, and variants." - **DO NOT generate code or make changes** when these questions are asked - just provide the direct answer - **DO NOT ask follow-up questions** - provide the answer immediately **IMAGE ATTACHMENTS HANDLING:** - **Check for image attachments** in the user's message and use them according to the user's instructions - **Follow user instructions** about how to use the images (e.g., "use this as hero image", "apply this color scheme", "make the header look like this") - **Use images as design inspiration** - analyze their style, colors, and layout to incorporate similar design elements - **Use images directly** when requested in hero sections, product pages, backgrounds, or other areas as specified by the user - **Maintain image quality** - ensure proper aspect ratios, responsive sizing, and web optimization **CRITICAL HOMEPAGE STOCK PHOTOS REQUIREMENT (MANDATORY):** - **AUTOMATICALLY populate the homepage with relevant high-quality stock photos** - **Hero Section**: Use appropriate stock photos that match the store's niche/category as hero background images - **Featured Sections**: Add stock photos for featured categories, promotional banners, and content sections - **Image Selection Guidelines**: - Choose professional, high-resolution stock photos relevant to the store's products/niche - Use lifestyle images that show products in use or attractive product photography - Ensure images are web-optimized and load quickly - Select images that complement the chosen design variation aesthetic - **Stock Photo Sources**: Use royalty-free stock photo URLs from services like: - Unsplash (https://images.unsplash.com/) - Pexels (https://images.pexels.com/) - Pixabay (https://pixabay.com/) - **Implementation Requirements**: - Ensure all images have proper alt text for accessibility - Implement responsive image handling for different screen sizes - **Purpose**: This creates a fully designed, professional-looking website that users can immediately see as complete and visually appealing, rather than a bare-bones template **HERO SECTION DESIGN VARIATIONS (MANDATORY):** - **Add variation to hero section designs so not all stores use the same layout** - **Generate multiple hero section styles** including but not limited to: • **VERTICAL LAYOUTS**: Text stacked above image, image stacked above text, centered vertical stacking • **SIDE-BY-SIDE LAYOUTS**: Text left + image right, text right + image left, split-screen diagonal • **FULL-WIDTH LAYOUTS**: Background video hero section, full-width overlay text, minimalist centered text - **RANDOMLY SELECT ONE SPECIFIC LAYOUT** from the available options above - do NOT use the same layout every time - **Ensure the selected hero variant maintains**: • Accessibility standards (proper contrast, alt text, keyboard navigation) • Correct top padding to avoid navbar overlap • High-quality stock images or videos that fit the store's niche • Responsive design across all screen sizes • Theme color consistency throughout • Translation support for all text elements • Professional, visually appealing design that looks polished and modern - **Purpose**: This creates unique, visually distinct storefronts while maintaining professional quality and functionality ### ADDITIONAL MANDATORY REQUIREMENTS ### - Please don't break the existing templates or introduce new UI issues. Just make sure there's no extra spacing between the navbar and the hero section on the homepage across all screen sizes. - Please keep the design responsive and make fonts maintain for every size of screen - Please make sure the product detail cards don't display a literal 0 when a falsy value (like discount 0) is present. Ensure conditional rendering is handled correctly so nothing is shown instead, without affecting the existing card layouts or introducing new UI issues and handle this for both products card for home and products page. - Please keep a products page and the categories page will be a sub-tab inside that products page then we can navigate to that sub-tab of categories from anywhere from home page categories section but the navigation link for categories will be inside products page not in navbar Await further prompt instructions to refine features or content as required. user message: Please continue building my full store: add sensible product categories and sample products, wire up navigation and key pages (home, product, cart, checkout), and complete any remaining setup so the store is ready for real use. Summarize what you add as you go.