import Link from "next/link"; import type { ReactNode } from "react"; import { Bebas_Neue, DM_Serif_Display, Manrope, Newsreader, Oswald, Sora, Special_Elite } from "next/font/google"; const brutal = Bebas_Neue({ subsets: ["latin"], weight: "400", variable: "--font-concept-brutal" }); const editorialDisplay = DM_Serif_Display({ subsets: ["latin"], weight: "400", variable: "--font-concept-editorial-display" }); const conceptSans = Manrope({ subsets: ["latin"], weight: ["400", "500", "600", "700"], variable: "--font-concept-sans" }); const editorialBody = Newsreader({ subsets: ["latin"], weight: ["400", "500", "600"], variable: "--font-concept-editorial-body" }); const condensed = Oswald({ subsets: ["latin"], weight: ["400", "500", "600"], variable: "--font-concept-condensed" }); const future = Sora({ subsets: ["latin"], weight: ["400", "500", "600", "700"], variable: "--font-concept-future" }); const notebook = Special_Elite({ subsets: ["latin"], weight: "400", variable: "--font-concept-notebook" }); const feedStates = [ { label: "Opt", tone: "positive", value: "Live" }, { label: "Eq", tone: "positive", value: "Live" }, { label: "Flow", tone: "accent", value: "Dense" }, { label: "Alert", tone: "negative", value: "9 high" } ]; const overviewMetrics = [ { label: "Options", value: "284" }, { label: "Equities", value: "142" }, { label: "Flow", value: "36" }, { label: "Alerts", value: "9" }, { label: "Rules", value: "14" }, { label: "Dark", value: "3" } ]; const alertRows = [ { title: "Stealth Accumulation", meta: "Bullish | Score 92 | NVDA", note: "Repeated bid-side sweeps with dark follow-through.", tone: "positive" }, { title: "Distribution Cluster", meta: "Bearish | Score 81 | SPY", note: "Offer-heavy packets rolling across three expiries.", tone: "negative" }, { title: "Gamma Pressure", meta: "Neutral | Score 74 | QQQ", note: "Market makers pinned near intraday resistance.", tone: "neutral" } ] as const; const flowRows = [ { title: "SPY 2026-06-21 C605", meta: "18 prints | $2.8M notional | Agg 78%", note: "Window 640ms with ask-side urgency.", tone: "accent" }, { title: "AAPL 2026-05-17 P185", meta: "11 prints | $1.1M notional | Spread $0.07", note: "Sweeps split across ARCA and CBOE.", tone: "negative" }, { title: "TSLA 2026-07-19 C240", meta: "8 prints | $980k notional | In 33%", note: "Late acceleration after lit print burst.", tone: "positive" } ] as const; const equityRows = [ { title: "NVDA", meta: "$972.44 | 28,400x | Off-Ex", note: "Dark ratio lifting into midday highs.", tone: "positive" }, { title: "SPY", meta: "$604.12 | 91,300x | Lit", note: "Index tape absorbing after alert burst.", tone: "neutral" }, { title: "AAPL", meta: "$214.77 | 18,100x | Off-Ex", note: "Block prints clustering beneath ask.", tone: "accent" } ] as const; const conceptSummary = [ { id: "concept-1", index: "01", title: "Mission Control", style: "Dark command center" }, { id: "concept-2", index: "02", title: "Market Journal", style: "Editorial financial desk" }, { id: "concept-3", index: "03", title: "Aurora Glass", style: "Futurist glass cockpit" }, { id: "concept-4", index: "04", title: "Tape Wall", style: "Brutalist signal board" }, { id: "concept-5", index: "05", title: "Field Notebook", style: "Analyst workbench" } ] as const; type ConceptSectionProps = { id: string; index: string; title: string; label: string; summary: string; designChoices: string[]; responsive: string[]; className: string; children: ReactNode; }; function ConceptSection({ id, index, title, label, summary, designChoices, responsive, className, children }: ConceptSectionProps) { return (
{`Concept ${index}`} {label}

{title}

{summary}

Key Design Choices

    {designChoices.map((choice) => (
  • {choice}
  • ))}

Responsive Considerations

    {responsive.map((item) => (
  • {item}
  • ))}
{children}
); } function MockTopbar({ brand, kicker }: { brand: string; kicker: string }) { return (
{kicker} {brand}
{feedStates.map((feed) => (
{feed.label} {feed.value}
))}
Filter: SPY, NVDA, AAPL
); } function MetricRack() { return (
{overviewMetrics.map((metric) => (
{metric.label} {metric.value}
))}
); } function Module({ title, subtitle, children, className = "" }: { title: string; subtitle?: string; children: ReactNode; className?: string; }) { return (

{subtitle ?? "Core module"}

{title}

Live
{children}
); } function ChartModule({ label }: { label: string }) { return (
{label} Signals layered on price
09:30 11:00 12:30 14:00 15:30
); } type MockRow = { title: string; meta: string; note: string; tone: string; }; function ListModule({ title, subtitle, rows }: { title: string; subtitle: string; rows: readonly MockRow[]; }) { return (
{rows.map((row) => (

{row.title}

{row.meta}

{row.note}

))}
); } function MissionControlMockup() { return (
Highest urgency Stealth accumulation in NVDA
Replay readiness Databento and Alpaca aligned
Mode Live
Source Auto
Dark hits 03
Focus ticker NVDA
); } function MarketJournalMockup() { return (
Vol. 27

The Islandflow Market Journal

Overview page redesign Same trading intelligence, calmer reading flow
Filter: SPY, NVDA, AAPL Mode: Live Replay ready

The page reads like a market front page: chart first, context second, then secondary feeds as supporting columns.

The same terminal content feels more analytical and less mechanical, which suits review sessions and replay mode.

); } function AuroraGlassMockup() { return (
); } function TapeWallMockup() { return (
Islandflow Overview

Watch the tape before the tape watches you.

Live mode Filter: SPY, NVDA, AAPL Replay hotkey ready
); } function FieldNotebookMockup() { return (
Islandflow Research Board

Overview page as an analyst workbench

Live Replay Filtered: NVDA / SPY / AAPL
Alert bias Bullish momentum concentrated in tech.
Flow quality Packet clustering suggests institutional pacing.
Replay use Good for post-close annotation and handoff.
); } export default function ConceptsPage() { const fontVariables = [ brutal.variable, editorialDisplay.variable, conceptSans.variable, editorialBody.variable, condensed.variable, future.variable, notebook.variable ].join(" "); return (

Frontend redesign study

Five Overview concepts for Islandflow

Each concept keeps the same product story intact: filter controls, live or replay mode, chart context, alerts, flow packets, and equities tape. What changes is the visual system, layout logic, and the feeling of operating the page.

Current overview

What stays consistent

Every direction below preserves the same core modules and the same analyst workflow. These are presentation explorations, not product scope changes.

{conceptSummary.map((concept) => ( {concept.index} {concept.title} {concept.style} ))}
); }