Vai al contenuto

πŸ“„ Frontend Pages

Status: Implemented (Feb 2026)

πŸ“– Overview

Application pages and routing structure. All authenticated routes are under (app)/.

πŸ—ΊοΈ Page Structure

frontend/src/routes/
β”œβ”€β”€ +page.svelte              # Login page (public)
β”œβ”€β”€ +layout.svelte            # Root layout (auth init)
β”œβ”€β”€ +error.svelte             # Error page
β”œβ”€β”€ (app)/                    # Authenticated routes
β”‚   β”œβ”€β”€ +layout.svelte        # App layout (sidebar, header, settings init)
β”‚   β”œβ”€β”€ dashboard/
β”‚   β”‚   └── +page.svelte      # Main dashboard
β”‚   β”œβ”€β”€ brokers/
β”‚   β”‚   β”œβ”€β”€ +page.svelte      # Broker list
β”‚   β”‚   └── [id]/
β”‚   β”‚       β”œβ”€β”€ +page.svelte  # Broker detail
β”‚   β”‚       └── +page.ts      # Load function
β”‚   β”œβ”€β”€ files/
β”‚   β”‚   └── +page.svelte      # Files management (static + BRIM tabs)
β”‚   β”œβ”€β”€ assets/
β”‚   β”‚   └── +page.svelte      # Assets (placeholder)
β”‚   β”œβ”€β”€ transactions/
β”‚   β”‚   └── +page.svelte      # Transactions (placeholder)
β”‚   β”œβ”€β”€ fx/
β”‚   β”‚   └── +page.svelte      # FX Management (placeholder)
β”‚   └── settings/
β”‚       └── +page.svelte      # Settings (4 tabs)

πŸ“‹ Pages

πŸ” Login Page (/)

  • Public access
  • LoginCard / RegisterCard / ForgotPasswordCard (card-style, not modals)
  • Animated background with waves and chart lines
  • Redirect to dashboard after login
  • User preferences (language, theme) applied on login

πŸ“Š Dashboard (/dashboard)

Dashboard
  • Overview of portfolio (placeholder)
  • Quick stats cards
  • (Charts with ECharts to be implemented in Phase 8)

🏦 Brokers (/brokers)

Broker List
  • Grid of broker cards with icons (fallback chain)
  • Add/Edit broker via BrokerModal (extends ModalBase)
  • Broker icon editable by clicking β†’ AssetPickerModal
  • Delete with confirmation dialog

πŸ” Broker Detail (/brokers/[id])

  • Header with icon, name, status
  • Cash balances with deposit/withdraw
  • Holdings table
  • Recent transactions
  • Import files section (BRIM) with plugin selection

πŸ“ Files (/files)

Files Page
  • Two tabs: Static Resources / Broker Reports (BRIM)
  • DataTable with sorting, filtering, pagination, URL-synced filters
  • Grid view toggle with image previews and search
  • Upload interface with:
    • Image files β†’ ImageEditModal (crop, rotate, flip)
    • Non-image files β†’ FileEditModal (rename)
  • Copy link, download, delete actions
  • File thumbnails via ?img_preview= API

βš™οΈ Settings (/settings)

Settings Page
  • 4 tabs: Preferences, Profile, Global (admin), About
  • ProfileTab: Avatar editing via AssetPickerModal, username display
  • PreferencesTab: Language, currency, theme
  • GlobalSettingsTab: Admin-only settings with edit lock
  • AboutTab: Version info (from Git tag), system info
  • PasswordChangeModal from profile
  • Mobile responsive with dropdown category selector