v0.5.0

maybe-finance/maybev0.5.0Apr 11, 2025by zachgoll

AI Summary

Major release introducing dark mode and AI chat capabilities, along with infrastructure changes requiring Sidekiq and Redis for background jobs.

Key Highlights

  • Dark mode theming added
  • AI Chat with OpenAI integration - optional and disabled by default
  • Infrastructure migration to Sidekiq + Redis (breaking change)
  • Bulk CSV import for transactions and trades
  • Mobile responsive template preparation
  • Preference for default time period

Breaking Changes

  • Sidekiq + Redis now required for background jobs - self-hosted instances need upgrade

New Features

  • Dark mode user preference
  • Personal finance AI chat (v1) - contextually aware of user finances
  • Bulk CSV transaction imports
  • Bulk CSV trade imports
  • Account-level import configuration templates
  • Exchange rate fetching for multi-currency net worth
  • Redis for ActiveJob and ActionCable

Full Release Notes

## Breaking changes

We are now using Sidekiq + Redis for background jobs.  To update your self hosted instance, you will need to follow the upgrade guide outlined here:

https://github.com/maybe-finance/maybe/pull/2004

## Dark mode + AI Chat is here!

We've got some _huge_ updates for this release:

- Add your OpenAI API key to enable contextually aware AI chats.  Please read [AI and your financial data](https://github.com/maybe-finance/maybe/wiki/AI-and-your-financial-data) to learn more about this feature and how we're handling data between your finances and OpenAI (**it's 100% optional and disabled by default!**)
- Set dark mode in your user preferences to enable our newest theme below:

![CleanShot 2025-04-11 at 12 00 07](https://github.com/user-attachments/assets/a9a784fd-5691-40a7-a6fc-434514e0cc30)

## What's Changed
* fix: Bug - Transaction matching dialog doesn't open by @tonyvince in https://github.com/maybe-finance/maybe/pull/1942
* Fix time period key conflicts by @zachgoll in https://github.com/maybe-finance/maybe/pull/1944
* Allow CSV imports to be configured with single or multi-account mode by @zachgoll in https://github.com/maybe-finance/maybe/pull/1943
* Fix modal closing on color picker drag #1869 by @bryanmck1 in https://github.com/maybe-finance/maybe/pull/1931
* Account-level import configuration templates by @zachgoll in https://github.com/maybe-finance/maybe/pull/1946
* Fix ticker filling when Synth is connected by @zachgoll in https://github.com/maybe-finance/maybe/pull/1950
* Fix: Purge stale holdings from accounts during sync by @zachgoll in https://github.com/maybe-finance/maybe/pull/1954
* Add tagged logging to sync process by @zachgoll in https://github.com/maybe-finance/maybe/pull/1956
* Preference to set default_period by @nikhilbadyal in https://github.com/maybe-finance/maybe/pull/1941
* Populate holdings for "offline" securities properly by @zachgoll in https://github.com/maybe-finance/maybe/pull/1958
* Format money for trade history in holdings drawer by @zachgoll in https://github.com/maybe-finance/maybe/pull/1961
* Fetch exchange rates for accounts that require conversion for net worth rollups by @zachgoll in https://github.com/maybe-finance/maybe/pull/1983
* Fix incorrect totals calculation when family has loan payments by @zachgoll in https://github.com/maybe-finance/maybe/pull/1984
* Fix transaction filters when transfers are present by @zachgoll in https://github.com/maybe-finance/maybe/pull/1986
* Data provider simplification, tests, and documentation by @zachgoll in https://github.com/maybe-finance/maybe/pull/1997
* Update security price query in demo generator by @vaibhav-if in https://github.com/maybe-finance/maybe/pull/2000
* Use Redis for ActiveJob and ActionCable by @zachgoll in https://github.com/maybe-finance/maybe/pull/2004
* Fix incorrect entry sorting in activity view by @tonyvince in https://github.com/maybe-finance/maybe/pull/2006
* fix(dashboard): account groups wrapping in balance sheet by @firedev in https://github.com/maybe-finance/maybe/pull/2010
* perf(imports): Bulk import CSV transactions by @Joelute in https://github.com/maybe-finance/maybe/pull/1962
* devContainer: Use Redis for ActiveJob and ActionCable. by @Joelute in https://github.com/maybe-finance/maybe/pull/2017
* bug: Use correct currency value while setting the currency. by @Joelute in https://github.com/maybe-finance/maybe/pull/2018
* Personal finance AI (v1) by @zachgoll in https://github.com/maybe-finance/maybe/pull/2022
* improvements(ai): Improve AI streaming UI/UX interactions + better separation of AI provider responsibilities by @zachgoll in https://github.com/maybe-finance/maybe/pull/2039
* perf(imports): Bulk import CSV trades by @Joelute in https://github.com/maybe-finance/maybe/pull/2040
* chore(providers): Use faraday retry, move retry logic to concrete provider level by @zachgoll in https://github.com/maybe-finance/maybe/pull/2042
* style(ai): Fix AI sidebar overflow when user hasn't enabled or created a chat yet by @zachgoll in https://github.com/maybe-finance/maybe/pull/2044
* provider: Ensure data provider exist before fetching for price. by @Joelute in https://github.com/maybe-finance/maybe/pull/2045
* Fix: Notes not saved on transfer transactions by @the-spectator in https://github.com/maybe-finance/maybe/pull/2053
* Show Uncategorized segment currency as per budget currency by @the-spectator in https://github.com/maybe-finance/maybe/pull/2058
* Mobile responsive template preparation by @zachgoll in https://github.com/maybe-finance/maybe/pull/2071
* Implement dark mode by @Shpigford in https://github.com/maybe-finance/maybe/pull/2078

## New Contributors
* @bryanmck1 made their first contribution in https://github.com/maybe-finance/maybe/pull/1931
* @vaibhav-if made their first contribution in https://github.com/maybe-finance/maybe/pull/2000
* @firedev made their first contribution in https://github.com/maybe-finance/maybe/pull/2010
* @Joelute made their first contribution in https://github.com/maybe-finance/maybe/pull/1962
* @the-spectator made their first contribution in https://github.com/maybe-finance/maybe/pull/2053

**Full Changelog**: https://github.com/maybe-finance/maybe/compare/v0.4.3...v0.5.0