github afadil/wealthfolio v3.0.0

5 hours ago

Wealthfolio 3.0 is a major update that transforms the app from a pure investment tracker into a
complete personal wealth manager witha built-in AI assistant.

Highlights

  • Net worth tracking: Track additional assets (properties, vehicles, collectibles, precious
    metals, cash) and liabilities for a complete net worth view alongside investment tracking. A
    dedicated Net Worth page shows an area chart over time, a balance sheet with collapsible
    asset/liability sections, a composition bar, and stale-valuation warnings for assets not updated in
    90+ days.

  • AI assistant: Chat with your portfolio using a streaming AI assistant powered by the rig LLM
    framework. Supports Ollama (local), Groq, Google AI, Anthropic, OpenAI, and OpenRouter. The
    assistant can look up accounts, holdings, allocation breakdowns, performance metrics, income
    summaries, goals, and valuation history. It can also record activities from natural language
    ("Buy 20 AAPL at 240 yesterday") and import CSV content directly in the chat. Conversations
    are saved as threads with search, pinning, and per-thread model selection.

  • Improved allocation insights: The old flat sector/country fields are replaced by a full
    taxonomy system. Built-in taxonomies include Asset Class, GICS Industries, Regions, Risk Category,
    and Instrument Type — all hierarchical with drill-down. Assets are auto-classified from market data
    (Yahoo Finance quote type, sector, country). The Holdings Insights page now features drillable
    donut charts, segmented allocation bars, and a currency breakdown widget. A migration banner helps
    convert legacy classification data.

  • CSV import upgrades: A redesigned multi-step wizard with separate flows for transaction import
    and holdings snapshot import. Features include auto-detection of column mappings, activity type and
    symbol remapping, configurable parse settings (delimiter, date format, decimal/thousands
    separators, skip rows), and a side-by-side CSV viewer with mapping table. Saved mapping profiles
    per account for repeat imports.

  • Spreadsheet activity editor: A full spreadsheet-like editor built on TanStack Table + TanStack
    Virtual with row virtualization. Supports keyboard navigation (arrow keys, Tab, Home/End, PgUp/PgDn),
    clipboard copy/paste with expansion dialog, multi-cell selection, in-place search (Ctrl+F),
    context menus, inline symbol search with "Create Custom Asset" option, and per-row dirty/pending/error
    indicators. Bulk save creates, updates, and deletes in one call. The toolbar shows a live changes
    summary badge.

  • Two tracking modes: Each account now has a tracking mode — Complete Transactions (holdings
    calculated from a full activity ledger) or Holding Snapshots (positions entered directly as
    periodic snapshots, for accounts like external 401k or pensions). The import flow, chart markers,
    and edit UI all adapt based on the selected mode. Accounts default to NOT_SET until configured.

  • Health Center: A data quality diagnostic dashboard that runs automated checks across five
    categories: Price Staleness, FX Integrity, Classification gaps, Data Consistency (orphan
    references, negative positions, legacy data), and Account Configuration. Issues are ranked by
    severity (Info → Warning → Error → Critical, escalating when a large share of portfolio market
    value is affected). One-click fix actions include syncing prices, fetching FX rates, and migrating
    legacy classifications. Dismissed issues reappear if the underlying data changes.

  • Market data sync redesign: A provider registry architecture with Yahoo Finance, Finnhub, Alpha
    Vantage, MarketData.app, and Metal Price API. Features automatic fallback on failure, per-provider
    rate limiting (token bucket), circuit breakers, quote validation, and fetch diagnostics. A symbol
    resolver chain handles exchange suffix mapping via an MIC-based exchange registry. Per-provider
    enable/disable, API key management, and priority configuration in settings.

  • Charts: The account history chart now renders clickable date markers — snapshot dates for
    Holdings-mode accounts, activity dates for Transactions-mode accounts. Clicking a marker opens a
    sidebar with the snapshot or activity details for that date.

  • Asset page: A redesigned asset profile with tabs for Overview (About, Holdings, Snapshots),
    Lots, and History. The Holdings tab shows positions across all accounts with quantity, market
    value, cost basis, gain/loss, and weight. Classification badges (asset class, instrument type,
    risk, sector, region) are shown inline. Alternative assets (property, vehicle, collectible,
    precious metal) get a manual valuation history grid. Properties and vehicles can display linked
    liabilities (e.g., mortgage).

  • Addon system: A third-party extension system with sandboxed execution, typed Host API, and
    granular permission declarations (accounts, portfolio, activities, market data, assets, quotes,
    performance, currency, goals, settings, files, secrets, events, UI). Permissions are
    risk-categorized (low/medium/high) and statically analyzed at install time. The Host API exposes
    shared QueryClient access for cache invalidation. Includes an addon SDK package, dev tools with
    hot-reload, and example addons (goal progress tracker, investment fees tracker).

  • Monorepo restructuring: The codebase is now organized as a pnpm + Cargo workspace. Rust logic
    is split into dedicated crates — wealthfolio-core (domain logic), wealthfolio-storage-sqlite
    (Diesel ORM), wealthfolio-market-data (provider registry), wealthfolio-ai (LLM chat + tools),
    wealthfolio-device-sync (E2EE sync), and wealthfolio-connect (broker integration). The
    frontend ships as a React 19 + Vite SPA under apps/frontend/, with shared UI components in
    @wealthfolio/ui. An Axum HTTP server (apps/server/) enables web mode using the same core
    logic.

  • Maintenance: Many fixes, performance improvements, and internal refactors.

Don't miss a new wealthfolio release

NewReleases is sending notifications on new releases.