From aef0de40f5373bbf409ffe24acacdb7746045884 Mon Sep 17 00:00:00 2001 From: bender Date: Thu, 12 Mar 2026 18:55:17 +0000 Subject: [PATCH 1/3] Update src/app/page.tsx --- src/app/page.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/src/app/page.tsx b/src/app/page.tsx index 813bf4a..9360b65 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -32,6 +32,7 @@ export default function LandingPage() { { name: "Features", id: "features" }, { name: "How It Works", id: "how-it-works" }, { name: "Impact", id: "metrics" }, + { name: "Stock Dashboard", id: "/stock-dashboard" }, { name: "Contact", id: "contact" } ]} button={{ text: "Report Issue", href: "#contact" }} -- 2.49.1 From a76b14365b8ff39aa0d0432ee7669bf29eacd925 Mon Sep 17 00:00:00 2001 From: bender Date: Thu, 12 Mar 2026 18:55:18 +0000 Subject: [PATCH 2/3] Add src/app/stock-dashboard/page.tsx --- src/app/stock-dashboard/page.tsx | 301 +++++++++++++++++++++++++++++++ 1 file changed, 301 insertions(+) create mode 100644 src/app/stock-dashboard/page.tsx diff --git a/src/app/stock-dashboard/page.tsx b/src/app/stock-dashboard/page.tsx new file mode 100644 index 0000000..f5610a1 --- /dev/null +++ b/src/app/stock-dashboard/page.tsx @@ -0,0 +1,301 @@ +"use client" + +import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; +import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline'; +import HeroLogoBillboard from '@/components/sections/hero/HeroLogoBillboard'; +import MetricCardFourteen from '@/components/sections/metrics/MetricCardFourteen'; +import FooterSimple from '@/components/sections/footer/FooterSimple'; +import { Package, TrendingUp, DollarSign, Building2, Plus, Minus } from 'lucide-react'; +import { useState } from 'react'; + +export default function StockDashboard() { + const [stocks, setStocks] = useState([ + { id: '1', symbol: 'ACME', quantity: 150, price: '$2,450.00' }, + { id: '2', symbol: 'TECH', quantity: 280, price: '$1,890.50' }, + { id: '3', symbol: 'GREEN', quantity: 95, price: '$3,250.00' } + ]); + + const handleAddStock = (id: string) => { + setStocks(stocks.map(stock => + stock.id === id ? { ...stock, quantity: stock.quantity + 1 } : stock + )); + }; + + const handleReduceStock = (id: string) => { + setStocks(stocks.map(stock => + stock.id === id && stock.quantity > 0 ? { ...stock, quantity: stock.quantity - 1 } : stock + )); + }; + + const companyInfo = { + name: 'TechFlow Solutions', + sector: 'Technology & Innovation', + established: '2015', + employees: '2,500+', + headquarters: 'San Francisco, CA' + }; + + const totalValue = stocks.reduce((sum, stock) => { + const price = parseFloat(stock.price.replace('$', '').replace(',', '')); + return sum + (price * stock.quantity); + }, 0); + + return ( + + + +
+ +
+ +
+
+
+
+

Stock Inventory

+

Manage quantities and monitor pricing for all items

+
+ +
+ {stocks.map((stock) => { + const price = parseFloat(stock.price.replace('$', '').replace(',', '')); + const itemTotal = price * stock.quantity; + return ( +
+
+
+ + Stock Item +
+

{stock.symbol}

+
+ +
+
+ Quantity: + {stock.quantity} units +
+
+ Unit Price: + {stock.price} +
+
+ Total Value: + ${itemTotal.toFixed(2)} +
+
+ +
+ + +
+
+ ); + })} +
+ +
+
+ +

Portfolio Summary

+
+
+
+

Total Items

+

{stocks.length}

+
+
+

Total Units

+

{stocks.reduce((sum, s) => sum + s.quantity, 0)}

+
+
+

Avg Price

+

${(stocks.reduce((sum, s) => sum + parseFloat(s.price.replace('$', '').replace(',', '')), 0) / stocks.length).toFixed(2)}

+
+
+

Portfolio Value

+

${totalValue.toFixed(2)}

+
+
+
+
+
+
+ +
+ sum + s.quantity, 0).toString(), + description: "Total Units in Stock" + }, + { + id: "2", value: `$${totalValue.toFixed(0)}`, + description: "Total Portfolio Value" + }, + { + id: "3", value: stocks.length.toString(), + description: "Distinct Stock Items" + } + ]} + metricsAnimation="slide-up" + useInvertedBackground={false} + /> +
+ +
+
+
+
+

Company Information

+

Overview of our organization and operations

+
+ +
+
+
+ +

Company Details

+
+
+
+

Company Name

+

{companyInfo.name}

+
+
+

Sector

+

{companyInfo.sector}

+
+
+

Established

+

{companyInfo.established}

+
+
+

Headquarters

+

{companyInfo.headquarters}

+
+
+

Employees

+

{companyInfo.employees}

+
+
+
+ +
+
+ +

Operations

+
+
    +
  • + + Real-time inventory tracking and management +
  • +
  • + + Advanced pricing and valuation analytics +
  • +
  • + + Seamless add and reduce stock functionality +
  • +
  • + + Comprehensive portfolio reporting +
  • +
  • + + Data export and integration capabilities +
  • +
+
+
+
+
+
+ + +
+ ); +} \ No newline at end of file -- 2.49.1 From 03e95d21c05163e41e071bf9f65afab1badafa4c Mon Sep 17 00:00:00 2001 From: bender Date: Thu, 12 Mar 2026 18:55:18 +0000 Subject: [PATCH 3/3] Update src/app/styles/variables.css --- src/app/styles/variables.css | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/app/styles/variables.css b/src/app/styles/variables.css index 3f290fd..586e562 100644 --- a/src/app/styles/variables.css +++ b/src/app/styles/variables.css @@ -11,14 +11,14 @@ --background-accent: #ffffff; */ --background: #ffffff; - --card: #f9f9f9; - --foreground: #120a00e6; - --primary-cta: #ff8c42; + --card: #f0f7ff; + --foreground: #001f5c; + --primary-cta: #106EFB; --primary-cta-text: #ffffff; - --secondary-cta: #f9f9f9; + --secondary-cta: #ffffff; --secondary-cta-text: #120a00e6; - --accent: #e2e2e2; - --background-accent: #c4c4c4; + --accent: #5ba3ff; + --background-accent: #106EFB; /* text sizing - set by ThemeProvider */ /* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem); -- 2.49.1