Wallets Search Dropdown Visibility & Yahoo Live Price Auto-Suggestion
Wallets
Transactions
Yahoo Finance
UX
- Search Dropdown Positioning & Visibility: Fixed ticker autocomplete dropdown positioning to always open downwards directly under the search box with proper z-index and overflow handling, preventing it from clipping or rendering underneath the wallet history overview card.
- Instant Holdings Display: Focusing on the search input now immediately renders existing wallet holdings without waiting for network responses, giving users instant access to their assets.
- Yahoo Finance Price Auto-Suggestion: Fixed candle close price extraction (
c property) in _fetchStockPricePLN, automatically populating the live price per share in PLN when selecting any asset from Yahoo Finance or existing holdings.
- Multi-Currency FX Support: Enabled seamless live FX rate conversion for Warsaw (PLN), European (EUR via
EURPLN=X), UK (GBP/GBp via GBPPLN=X), and US/global (USD via USDPLN=X) assets.
Wallets In-Place Table Reload & Active Transaction Draft Protection
Wallets
Transactions
Performance
UX
- Transaction Draft Protection: Prevented background
liveDataReady events from interrupting the user while drafting or entering a transaction in the Wallets trade form or Quick Entry.
- In-Place Table Reloads: Eliminated disruptive whole-screen flashes and skeleton loader wipes during refresh cycles; holdings and transaction tables now update cleanly in-place.
- Fast-Path Live Price Updates: Market price updates in the background update live holdings values in-place without triggering redundant DynamoDB network fetch cascades.
- Immediate Post-Trade Reset: Optimized transaction submission to close the form instantly upon save and smoothly reload only the affected tables without double-reloading.
Dashboard Today's Movers Tablet Layout & Nominal Change Alignment
Dashboard
Today's Movers
Tablet UX
Responsive
- Volume Badge Overlap Resolution: Fixed layout collision on tablet viewports where the intraday volume pace chip badge overlapped with the nominal change figure in the "Daily PLN" column.
- Optimized Column Proportions: Rebalanced table layout from default equal thirds to dedicated proportions (28% Company, 52% Chart & Metrics, 20% Daily PLN) with tablet media query adjustments providing generous breathing room for sparklines and volume chips.
- Right-Aligned Financial Metric: Set
text-align: right on the Daily PLN header and values to eliminate dead space on the right and neatly align monetary changes against the card edge.
- Company Name Truncation: Added ellipsis overflow handling to prevent unusually long company names from distorting table column dimensions on compact tablet screens.
Manual Wrap Share Recipient Scope Selection (Just Me vs All Recipients)
Summaries
Email
Sharing
User Profile
- Smart Recipient Prompt: When manually sharing a monthly performance wrap via email, users with multiple email addresses on their profile share list are prompted to choose whether to send just to themselves (logged user email) or to all configured recipients.
- Direct Single-Email Dispatch: Users with only a single email configured experience zero friction with instant, direct dispatch.
- Scoped Backend Delivery: Enhanced
POST /monthly-wraps/email with secure recipientScope validation ('me' vs 'all') ensuring emails are sent precisely to the intended recipients.
Testing Architecture Segregation & Sub-Second Smoke Test Runner
Testing
Performance
Developer Experience
Authentication
- Sub-Second Smoke Test Suite: Segregated test suites into fast smoke tests (
./test.sh smoke, npm run test:smoke) executing all UI and layout contracts in < 0.6 seconds by directly targeting UI contract modules and bypassing heavy backend dependencies.
- Universal Test Runner: Added
./test.sh supporting smoke/ui, full, browser, and all modes, integrated directly with package.json scripts.
- Strict Auth Bypass Architecture: Documented and enforced mock authentication via
?devAuth=1 / localStorage.setItem('roastfolio.devAuth', '1'), completely eliminating slow live Cognito user creation, verification emails, and password reset loops during UI testing.
Browser URL Box Favicon Resolution & Brand Typography Standardization
Favicons
Browser URL Box
Brand Typography
Bug Fixes
- Browser URL Box Favicons: Resolved stale logo caching in browser URL and address bar tabs by generating a full multi-frame 16/24/32/48/64 ICO binary, dedicated 32x32 and 16x16 PNG fallbacks, and adding cache-busting link tags.
- Root Favicon Sync: Synchronized
favicon.ico and PNG icons to repository root to support local dev servers serving from root.
- Brand Typography Standardization: Standardized application header and banner brand titles across all views and navigation bars from capitalized "Roastfolio" to lowercase "roastfolio".
Dedicated Release Summary Screen & Brand Identity Overhaul
Screens
Brand Identity
Navigation
Testing & CI
- New Screen: Introduced this dedicated, standalone Release Summary & Changelog screen accessible across all app footers and navigation menus.
- Brand Overhaul: Replaced app icon assets across touchpoints with the high-resolution neon green candlestick and purple "R" emblem, featuring dark squircle bevel and ambient glow.
- Multi-Resolution Favicons: Generated crisp 16/32/48 ICO favicons, 192/512 PNG icons, and adaptive maskable icons for Android and iOS PWA installs.
- Sub-Second Test Performance: Optimized pytest configuration to bypass slow headless browser tests by default and resolved Python 3.12 keyword collection bottlenecks.
Neon Candlestick App Icon Integration & Visual Assets
Brand
PWA
UI/UX
- Brand Integration: Deployed the neon candlestick icon across splash loader, auth modal, sidebar header, brand preview modal, and global footer.
- User Guide Polish: Replaced generic emoji headers in User Guide with official Roastfolio brand assets and added touch-icon links.
- Service Worker Caching: Added multi-size favicon to precache assets for instant offline presentation.
Calendar Hover Tooltip Formatting Correction
Bug Fix
Monthly Audit
- Tooltip Format: Eliminated duplicate plus sign display on calendar day hover tooltips for positive performance days.
- Visual Cleanup: Enhanced typography rendering on high-DPI displays.
Market Context Returns & Snapshot Fallbacks
Email Recap
Snapshots
- Benchmark Accuracy: Resolved benchmark return discrepancy by prioritizing canonical close-to-close market returns.
- Calendar Heatmap: Trimmed journey chart strictly to month-end boundaries with solid email-compatible hex colors.
- Dynamic Snapshot Fallback: Added automatic snapshot estimation for missing intraday moves.
Summary Wrapped Benchmarks Card
Analytics
Benchmarks
- Benchmark Comparison: Added summary wrapped benchmarks card in the lower right corner displaying Poland (WIG) and World (MSCI ACWI) monthly performance.
Tactile Texture Mesh & Weekend Extrapolation
Visuals
Charts
- Tactile Aesthetics: Subtle tactile texture and ambient lighting mesh on recap covers.
- Weekend Handling: Gapless weekend benchmark extrapolation in The Journey chart.
Spotify Wrapped & Revolut-Style Monthly Audit Engine
Monthly Audit
Email Engine
Architecture
- Audits & Wraps: Spotify Wrapped and Revolut-inspired monthly audit email template redesign.
- Cumulative Journey Chart: Inline SVG cumulative journey chart with dynamic green/red outperformance fill.
- Heatmap & Movers: 7-column calendar heatmap, Who Moved Your Month leader & anchor highlights, and conditional seasonality.
Cash Masking Privacy & Share Sheet Controls
Privacy
Sharing
- Privacy Control: Added user privacy preference to mask PLN cash flows and nominal positions in notification emails (
hideCashInNotifications).
- Share Sheet: Integrated privacy toggle directly into social share dialogs.
Automated Report Email Engine & Multi-Recipient Notifications
Architecture
Notifications
AWS SES
- Email Dispatch Engine: Automated serverless report email generator built on AWS SES with multi-recipient preferences.
- On-Demand Dispatches: Manual and scheduled recap trigger directly from the user dashboard.
Milestones Calendar & All-Time High Celebrations
UI/UX
Gamification
- Milestone Calendar: Interactive daily return calendar widget on Monthly Summaries with Best/Worst day callouts.
- ATH Celebrations: Radiant golden pulsing halo and trophy badge when portfolio touches All-Time Highs.
Floating Interactive Crosshair Tooltip on The Journey
Charts
Interactivity
- Interactive Crosshair: Replaced static under-chart display with floating hover crosshair tooltip with indicator swatches and bounds clamping.
Continuous Snapshot Backfills & Modal Error Handling
Data Engine
XIRR / TWR
- Continuous Backfills: Continuous calendar day snapshot backfilling from earliest historical transaction dates (2021+).
- Performance: Fast incremental XIRR/TWR recalculation and background async workers for transaction edits.
- Modal Feedback: Converted inline validation errors to dedicated modal dialog popups.
Editorial Bento Presentation & Private Share Sheets
Bento UI
Export
- Editorial Bento Layout: High-impact Bento-grid architecture for monthly performance summaries.
- Private Exports: High-resolution PNG sharing canvas and localized client-side image generation.