Logo
Explore Help
Sign In
gavin/maybe
1
0
Fork 0
You've already forked maybe
Code Issues Pull Requests Actions Packages Projects Releases 28 Wiki Activity

28 Releases 29 Tags

RSS Feed
  • v0.6.0 224f21354a
    Compare

    v0.6.0 Stable

    zachgoll released this 2025-07-25 05:34:28 +08:00 | 4 commits to main since this release

    Farewell... Maybe 👋

    maybe-meet-again

    TL;DR

    Maybe is pivoting to B2B financial forecasting and scenario planning and as a company, will no longer be actively maintaining this repository. What this means:

    • This final release is a working, “as-is” version of the software
    • As a company, we will be turning 100% of our focus to the pivot, and therefore, will not be actively maintaining / accepting contributions to this repository

    Thanks to our contributors and beta testers!

    Before I talk too much about the engineering and product side of things, we want to extend our gratitude to our awesome contributors! We had hundreds of individuals contribute to the project and even more helping report bugs, suggest features, and raise new ideas.

    This is a huge project and we couldn’t have gotten this far without our early supporters and OSS contributors.

    Demo

    Below is a quick demo of what the Maybe app can do. You can learn how to deploy it following our Docker Setup guide.

    https://github.com/user-attachments/assets/b524c434-3a38-417d-b4c0-cd78c0af9b6a

    Self hosted features include:

    • Dashboard to see your net worth trend over time and current personal balance sheet
    • Rich transaction filtering, searching, bulk updating, and viewing
    • Account views with the ability to see balance trends, reconciliations, and detailed breakdowns of your balance changes
    • View your monthly budgets with category averages, income summary, and more
    • Intelligent AI chat that knows your finances and can answer questions about them
    • Multi-currency support
    • API with key management to build automations on top of Maybe
    • CSV imports for accounts, transactions, and trades
    • Categories, Tags, Merchants
    • Rules to auto-categorize your transactions, detect merchants, and more
    • Invite members to your household
    • 2FA

    Recap, Reflections

    For many of you, this final release comes with a sense of disappointment, and that’s understandable. We’re not excited about this either, and wish we had unlimited time and money to fulfill our vision for this app (we have years worth of new feature designs in the backlog)! In the end, our obligation as a company is to our investors, and as outlined in Josh’s post here, we’ve determined that continuing to build this app is not our best chance at paying back our investors and profiting as a company.

    That said, over the last few years, our team has dedicated some serious amount of thought asking the question, “How can we build a better personal finance app?”. And in that light, I’d be remiss not to share some of our biggest successes, failures, and unexpected challenges along the way. We hope that some of these reflections propel the OSS community forward and one day lead to a truly great, OSS personal finance app.

    The wins

    We’ve been thinking about personal finance for a lot of years. This isn’t our first attempt at creating this app, and along the way, we’ve learned some valuable lessons that have made it into the final release of this software.

    A simple, beautiful personal finance app

    image

    Let me give credit where it is due. Our lead designer @justinfar has done an incredible job crafting a simple and clean UI. Some of you may look at our app and think, “That’s it?”. But believe us when we say, this was intentional. We spent a lot of time asking the question, “What can we delete?”.

    Our goal with this app was to remove complexity from personal finance. Many personal finance apps overwhelm the user with dashboards, complex UIs, and too much detail. We believe that many people want to track their finances but are simply too overwhelmed by the challenge of getting started. Most people need to know just a few important things about their finances:

    • How much money do I have?
    • Am I spending less than I’m earning?
    • How much did I spend last month?
    • What am I spending my money on?

    This app answers all of those questions and gives the user a simple interface to categorize, organize, and get to those answers quicker. While some users might look for a richer feature set, we believe most users are satisfied with less; not more.

    A place for everything

    One of our greatest frustrations with other personal finance apps is not having a “place” or a “home” for common financial scenarios.

    One common scenario in personal finance is a “transfer”. A transfer is a movement of funds from one account to another, and creates a transaction of opposite values on each of those accounts. Many personal finance apps treat these the same as the rest of your transactions and force you into this uncomfortable pattern of using a “Transfer” category or “Excluded” category to filter this noise out of your budgets and metrics. Furthermore, some transfers (like loan payments) should be included in your budgeting while others (like credit card payments) are a “double-count” that should be excluded from budgets. It forces users to create a “Junk drawer” for the things they don’t know what to do with.

    The Maybe app treats transfers as first-class citizens. We auto-detect your transfers and don’t even allow you to categorize them because they shouldn’t be categorized. This way, transfers are automatically excluded from budget totals and other metrics.

    https://github.com/user-attachments/assets/b0b93e1f-7315-4cf3-812e-979aa404dda8

    Another common scenario is “one time expenses”. Similar to transfers, these expenses (e.g. “moving expenses”) don’t really belong in budgets either. The Maybe app allows you to mark these as “one time” and automatically excludes from your “average spending” and other budget totals.

    https://github.com/user-attachments/assets/7cf5b8e3-480c-4bb9-81b8-0e646dc25c16

    Outside these common scenarios, the Maybe app also allows you to create various account types and even “reconcile” them to a new balance without creating that nasty “adjustment” transaction that nobody knows how to categorize or what to do with.

    https://github.com/user-attachments/assets/5592130c-b57a-4344-975f-df8db8992f55

    We set out to create an app that has a place for all your financial scenarios, and while I think there is still work to be done on this front, we handled the most important ones (unlike many other apps). And we’re proud of that!

    A simple stack

    No self-hosted app is “easy” to deploy. But we did our best to make things simple. The Maybe app can be hosted all inside a single Docker container with optional market data API dependencies.

    For the demos of this write-up, I started a brand new self hosted app in less than 10 minutes!

    The losses

    As we’re stopping active development on this project, there were clearly some losses. Aside from the fact that growing a B2C SaaS app is challenging in its own right from a business perspective, I’ll focus on some of the product/engineering losses that we feel could have been remediated with some more time and money to throw at this problem.

    Data providers, data providers, data providers

    The single biggest challenge with a personal finance app in 2025 is bank providers.

    Some companies have had enough time to work around this challenge with all sorts of clever UIs and mathematical shortcuts, but when push comes to shove, the state of “Open Banking” and bank provider data comes with endless frustration. While we believe we could have slowly but surely solved a majority of these problems, we simply needed more time and more money to do so. Below are just a few of the challenges we were still working through:

    • Unsupported banks (there are a TON, and most users churn if even one of their banks is unsupported)
    • Banks that only support logins at certain times of day
    • Bank provider documentation not matching the production data we received
    • Bank provider data being plain wrong (there is a surprisingly large amount of this)
    • Idiosyncracies of each financial institution (everyone reports their data a little differently)
    • The vast number of financial securities (i.e. stocks, options, etfs, etc.), many of which have differing data across market providers, and many of which have sparse to zero data

    Needless to say, this is a massive challenge for anyone building a personal finance app and is the primary reason why “bootstrapping” a personal finance app with automated bank syncing is an uphill battle. You need a lot of money and time to get this right.

    Data consistency and cache invalidation

    While a dashboard with a net worth graph doesn’t look all that complicated, it’s one of those “iceberg” problems. The more you dig, the more complexity you find.

    A personal finance app needs to show a user’s total net worth trend over time. A personal finance app needs to show average spending. A personal finance needs to show correct balance sheet values.

    Every view of the app touches nearly all the user’s data. If any piece of data is wrong, every view in the app is wrong. There is nowhere to hide in a personal finance app, and even the slightest change to the date of a historical transaction propagates upstream and affects the net worth graph, account sidebar trends, metrics, budgets, and pretty much every other view of the app!

    The UI required by users demands a high degree of focus on both performance + accuracy. But in a finance app (or… any app!), these two things are at odds with each other. Achieving full accuracy can be done by writing “facts” to the database (event-sourcing) and deriving results through queries and materialized views. Keep the data in its “raw” form and delegate the complexity to the read side of things. Using this approach, you’re guaranteed updated data everywhere in the app.

    Unfortunately, taking this approach with no answer for the performance side of things will result in an app that is 100% accurate and takes 3 minutes to load each page.

    Having learned some lessons from our V1 approach to building this app, we opted for a “hybrid event-sourced” approach. We wrote “facts” (i.e. transactions, trades, valuations) to the database, “synced” them in background jobs, and wrote them to “cache tables” (i.e. balances, holdings). This made the query side of things a lot simpler (still not simple though) and improved performance, but at the cost of data consistency.

    While I believe the final version of this app comes close to full accuracy / consistency of data, there are still inevitable challenges here and something we wish we could have spent some more time on.

    The unexpected challenges

    And finally, let’s talk about a few of the challenges we didn’t know we’d be facing.

    OSS, financial privacy, and project management

    As an open source project, we constantly received bug reports. Unfortunately (but understandably), many users are not comfortable sharing their personal financial situation.

    This created an odd dynamic. We are open source, but in order to fix data bugs, we need to look at the data. If the user can’t share all the required information, we can’t reproduce the issue.

    I’m not sure there’s a great solution to this. It made the project management and bug fixing side of things extremely challenging. We wanted to manage all issues on the public repo, but by the nature of the app, we ended up having to track some issues internally and privately and others publicly.

    It made things hard to see it all in one spot, and we didn’t realize how much of a roadblock this would become for us.

    Multi-currency + Investments Data

    Building a multi-currency app is tough to begin with. We took on this challenge in the spirit of OSS and I believe we built a fairly comprehensive and solid solution.

    That said, having global users exposed us to the global markets.

    To say this is challenging is an understatement and then some. Let’s start with some basic numbers (don’t fact check me, this is largely coming from a quick ChatGPT session, but should be in the ballpark):

    • There are ~180 currencies globally
    • There are ~46k global exchanges, all of which have different securities and different prices
    • There are ~55k publicly traded companies globally
    • There are 120k+ mutual funds, ~10k ETFs
    • Crypto… (we won’t go there)

    In order to show an accurate investment portfolio graph, we need historical prices for all the user’s securities in their portfolio. Given the fact that there is no single data provider that supplies all these prices, many providers treat exchange codes differently, and market data is extremely expensive, this become one of our foremost challenges.

    We ended up allowing users to create “manual” tickers which has worked fairly well. But the scope of this problem is huge and there’s a reason entire applications are built to solely handle investment data (often US-based only).

    Closing thoughts

    Given our tiny team and short time horizon, we’re proud of what we’ve built here and the contributions we’ve made to OSS in the process. We’ve built the “engine” and we hope the OSS community can take this core engine and build some interesting use-cases on top of it.

    With that, farewell! Maybe…

    Downloads
    • Source Code (ZIP)
    • Source Code (TAR.GZ)
  • v0.5.0 9fa3698823
    Compare

    v0.5.0 Stable

    zachgoll released this 2025-04-11 23:57:02 +08:00 | 296 commits to main since this release

    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 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

    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

    Downloads
    • Source Code (ZIP)
    • Source Code (TAR.GZ)
  • v0.4.3 c95bb082a9
    Compare

    v0.4.3 Stable

    zachgoll released this 2025-03-01 04:11:41 +08:00 | 379 commits to main since this release

    Data resets, offline investment trades, and miscellaneous stability improvements

    This release comes with a wide mix of stability improvements and quality of life updates; particularly for self hosted apps, which can now be "reset" in user settings. If your data looks wrong or you want a "clean slate" to work from, we've added the ability for you to easily perform these resets without writing SQL or manually deleting records.

    This release also comes with a much clearer UI surrounding the Synth data provider. New self hosted users will now see a prominent warning message if they have missing data as a result of a misconfigured or absent data provider.

    What's Changed

    • Add new category flow by @syedbarimanjan in https://github.com/maybe-finance/maybe/pull/1857
    • Fix parent category sums in budget by @zachgoll in https://github.com/maybe-finance/maybe/pull/1894
    • Add breadcrumbs support across application by @Shpigford in https://github.com/maybe-finance/maybe/pull/1897
    • Dashboard design fixes by @zachgoll in https://github.com/maybe-finance/maybe/pull/1898
    • Allow account balance to dynamically use currency format on preference page by @Harry-kp in https://github.com/maybe-finance/maybe/pull/1910
    • Feat: Data "reset" button by @tonyvince in https://github.com/maybe-finance/maybe/pull/1913
    • Fix: Make Tags selection scrollable by @tonyvince in https://github.com/maybe-finance/maybe/pull/1921
    • Fix value wrapping on account balance in sidebar by @zachgoll in https://github.com/maybe-finance/maybe/pull/1922
    • Fix import configuration form so number format is applied by @zachgoll in https://github.com/maybe-finance/maybe/pull/1923
    • Add transitions to buttons and other common design system elements by @zachgoll in https://github.com/maybe-finance/maybe/pull/1924
    • Allow offline trade tickers by @zachgoll in https://github.com/maybe-finance/maybe/pull/1925
    • fix: Don't show Billings on settings navbar when self-hosted by @tonyvince in https://github.com/maybe-finance/maybe/pull/1912
    • Show UI warning to user when they need provider data but have not setup Synth yet by @zachgoll in https://github.com/maybe-finance/maybe/pull/1926
    • Invert liability graphs to have correct signage by @zachgoll in https://github.com/maybe-finance/maybe/pull/1928
    • Escape quotations in CSV imports properly by @zachgoll in https://github.com/maybe-finance/maybe/pull/1929

    New Contributors

    • @syedbarimanjan made their first contribution in https://github.com/maybe-finance/maybe/pull/1857

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

    Downloads
    • Source Code (ZIP)
    • Source Code (TAR.GZ)
  • v0.4.1 da668f3dc0
    Compare

    v0.4.1 Stable

    zachgoll released this 2025-02-22 03:19:50 +08:00 | 405 commits to main since this release

    Patch release for git versioning info crash error

    Downloads
    • Source Code (ZIP)
    • Source Code (TAR.GZ)
  • v0.4.0 f96bb84c4c
    Compare

    v0.4.0 Stable

    zachgoll released this 2025-02-22 01:39:49 +08:00 | 408 commits to main since this release

    Maybe Refresh 🎉

    This latest version comes with a brand new and simplified UI plus a ton of huge performance improvements on the transactions, dashboard, and accounts pages.

    CleanShot 2025-02-21 at 12 39 12

    What's Changed

    • Fix account deletion cascade bug by @zachgoll in https://github.com/maybe-finance/maybe/pull/1644
    • Do not raise on Plaid item not found exceptions for item deletions by @zachgoll in https://github.com/maybe-finance/maybe/pull/1646
    • Align cascade delete behavior for transfers by @zachgoll in https://github.com/maybe-finance/maybe/pull/1647
    • fix: Only admins can generate invite codes by @tonyvince in https://github.com/maybe-finance/maybe/pull/1611
    • Only update account balance if changed by @zachgoll in https://github.com/maybe-finance/maybe/pull/1676
    • Adjust queues to prioritize account syncs, handle missing current day values by @zachgoll in https://github.com/maybe-finance/maybe/pull/1682
    • Added Decimal Support in min transaction by @Harry-kp in https://github.com/maybe-finance/maybe/pull/1681
    • Fix n+1 for categories in for to_donut_segments_json in budget by @tapalilov in https://github.com/maybe-finance/maybe/pull/1693
    • Add More Timelines by @nikhilbadyal in https://github.com/maybe-finance/maybe/pull/1714
    • Add cabin / cottage as a property type by @eithe in https://github.com/maybe-finance/maybe/pull/1658
    • Add RejectedTransfer model, simplify auto matching by @zachgoll in https://github.com/maybe-finance/maybe/pull/1690
    • Fix: Editing a category does not show notification until next page refresh by @jestinjoshi in https://github.com/maybe-finance/maybe/pull/1720
    • Bump to Ruby 3.4.1 by @zachgoll in https://github.com/maybe-finance/maybe/pull/1721
    • Lazy load synth logos by @zachgoll in https://github.com/maybe-finance/maybe/pull/1731
    • Only build armv7 on official releases by @zachgoll in https://github.com/maybe-finance/maybe/pull/1732
    • Don't allow a subcategory to be assigned to another subcategory to ensure 1 level of nesting max by @elvisserrao in https://github.com/maybe-finance/maybe/pull/1730
    • Preserve transaction filters and transaction focus across page visits by @zachgoll in https://github.com/maybe-finance/maybe/pull/1733
    • Add/remove members and invitations by @Shpigford in https://github.com/maybe-finance/maybe/pull/1744
    • Ensure Consistent Category Colors by @JLambertazzo in https://github.com/maybe-finance/maybe/pull/1722
    • Allow users to update their email address by @Shpigford in https://github.com/maybe-finance/maybe/pull/1745
    • Initial pass at Plaid EU by @Shpigford in https://github.com/maybe-finance/maybe/pull/1555
    • Fix EU plaid flow by @zachgoll in https://github.com/maybe-finance/maybe/pull/1761
    • Improve speed of transactions page by @zachgoll in https://github.com/maybe-finance/maybe/pull/1752
    • Fix: unable to add accounts without plain set up by @F2210 in https://github.com/maybe-finance/maybe/pull/1769
    • Fix: make date format year consistent overall #1712 by @scodes73 in https://github.com/maybe-finance/maybe/pull/1726
    • Cursor rules and project design overview by @zachgoll in https://github.com/maybe-finance/maybe/pull/1788
    • Fix crypto.randomUUID errors when adding holdings by @zachgoll in https://github.com/maybe-finance/maybe/pull/1795
    • Split family and Plaid item syncs into multiple jobs by @zachgoll in https://github.com/maybe-finance/maybe/pull/1799
    • Fix: Incorrect Currency Assignment for Stock Prices (#1623) by @saphp in https://github.com/maybe-finance/maybe/pull/1798
    • Fix budget allocation forms from resetting and clearing data on slow networks by @zachgoll in https://github.com/maybe-finance/maybe/pull/1804
    • Refactor transaction enrichment to support batch processing by @Shpigford in https://github.com/maybe-finance/maybe/pull/1803
    • Add scope to filter transactions from active accounts by @Shpigford in https://github.com/maybe-finance/maybe/pull/1810
    • fix: Save completely allocated budget by @M123-dev in https://github.com/maybe-finance/maybe/pull/1811
    • feat: Add institution details to Plaid items by @Shpigford in https://github.com/maybe-finance/maybe/pull/1816
    • Multi-factor authentication by @Shpigford in https://github.com/maybe-finance/maybe/pull/1817
    • fix: Plaid webhook verification by @zachgoll in https://github.com/maybe-finance/maybe/pull/1824
    • Plaid EU webhooks migration task by @zachgoll in https://github.com/maybe-finance/maybe/pull/1825
    • Fix Account Holding validation and synchronization by @Shpigford in https://github.com/maybe-finance/maybe/pull/1818
    • Feature: Add the ability to "revert" a CSV import by @zachgoll in https://github.com/maybe-finance/maybe/pull/1814
    • feat(import): add currency and number format support for CSV imports by @danestves in https://github.com/maybe-finance/maybe/pull/1819
    • fix: subcategories are not properly handled for budget allocations by @pauleke65 in https://github.com/maybe-finance/maybe/pull/1844
    • Enhance security information retrieval and handling by @Shpigford in https://github.com/maybe-finance/maybe/pull/1826
    • fix: Liabilities favorable direction is "down" by @M123-dev in https://github.com/maybe-finance/maybe/pull/1849
    • Upgrade to Tailwind v4 by @zachgoll in https://github.com/maybe-finance/maybe/pull/1853
    • Enhance Plaid connection management with re-authentication and error handling by @Shpigford in https://github.com/maybe-finance/maybe/pull/1854
    • Maybe Design System Updates by @zachgoll in https://github.com/maybe-finance/maybe/pull/1856
    • fix: Transfers should always total to zero by @tonyvince in https://github.com/maybe-finance/maybe/pull/1859
    • fix: Ghost subcategories when parent category is deleted by @tonyvince in https://github.com/maybe-finance/maybe/pull/1874
    • Fix import configuration failures by @zachgoll in https://github.com/maybe-finance/maybe/pull/1876
    • New Design System + Codebase Refresh by @zachgoll in https://github.com/maybe-finance/maybe/pull/1823

    New Contributors

    • @JLambertazzo made their first contribution in https://github.com/maybe-finance/maybe/pull/1699
    • @tapalilov made their first contribution in https://github.com/maybe-finance/maybe/pull/1693
    • @eithe made their first contribution in https://github.com/maybe-finance/maybe/pull/1658
    • @elvisserrao made their first contribution in https://github.com/maybe-finance/maybe/pull/1730
    • @F2210 made their first contribution in https://github.com/maybe-finance/maybe/pull/1769
    • @scodes73 made their first contribution in https://github.com/maybe-finance/maybe/pull/1726
    • @saphp made their first contribution in https://github.com/maybe-finance/maybe/pull/1798
    • @M123-dev made their first contribution in https://github.com/maybe-finance/maybe/pull/1811
    • @danestves made their first contribution in https://github.com/maybe-finance/maybe/pull/1819
    • @pauleke65 made their first contribution in https://github.com/maybe-finance/maybe/pull/1844

    Full Changelog: https://github.com/maybe-finance/maybe/compare/v0.3.0...v0.4.0

    Downloads
    • Source Code (ZIP)
    • Source Code (TAR.GZ)
  • v0.3.0 8c8e972dc8
    Compare

    v0.3.0 Stable

    zachgoll released this 2025-01-18 06:01:26 +08:00 | 530 commits to main since this release

    Budgeting is here!

    A long awaited feature, Maybe now supports budgeting! We believe budgeting should be easy and simple. Categorize your transactions, mark transfers, one-time expenses, and get a clear breakdown of where your money is going each month.

    https://github.com/user-attachments/assets/4dcf3f66-7b26-42e7-9c6b-48df7e19a798

    What's Changed

    • Add account data enrichment by @zachgoll in https://github.com/maybe-finance/maybe/pull/1532
    • Handle nil name for entries by @zachgoll in https://github.com/maybe-finance/maybe/pull/1550
    • Fix date format validation error by @zachgoll in https://github.com/maybe-finance/maybe/pull/1551
    • Make transaction enrichment opt-in for all users by @zachgoll in https://github.com/maybe-finance/maybe/pull/1552
    • Preserve original transaction names when enriching by @zachgoll in https://github.com/maybe-finance/maybe/pull/1556
    • Preserve pagination on entry updates by @zachgoll in https://github.com/maybe-finance/maybe/pull/1563
    • Nested Categories by @zachgoll in https://github.com/maybe-finance/maybe/pull/1561
    • Save error backtrace for sync errors for better debugging by @tonyvince in https://github.com/maybe-finance/maybe/pull/1578
    • fix: Bug | creating duplicate category leads to crash screen by @tonyvince in https://github.com/maybe-finance/maybe/pull/1577
    • Fix unknown attribute 'parent_category' for Category in demo generator by @akabiru in https://github.com/maybe-finance/maybe/pull/1575
    • Fix: breaking change after bumping hotwire-livereload to 2.0.0 by @tonyvince in https://github.com/maybe-finance/maybe/pull/1589
    • Transfer and Payment auto-matching, model and UI improvements by @zachgoll in https://github.com/maybe-finance/maybe/pull/1585
    • Budgeting V1 by @zachgoll in https://github.com/maybe-finance/maybe/pull/1609
    • Fix transfer matching logic by @zachgoll in https://github.com/maybe-finance/maybe/pull/1625
    • Fix budget money formatting by @zachgoll in https://github.com/maybe-finance/maybe/pull/1626
    • Update snapshot_account_transactions to only give transactions by filtering on entryable_type by @Repsay in https://github.com/maybe-finance/maybe/pull/1629
    • FIX: correct display of percentages by @MrTob in https://github.com/maybe-finance/maybe/pull/1622

    New Contributors

    • @akabiru made their first contribution in https://github.com/maybe-finance/maybe/pull/1575
    • @Repsay made their first contribution in https://github.com/maybe-finance/maybe/pull/1629
    • @MrTob made their first contribution in https://github.com/maybe-finance/maybe/pull/1622

    Full Changelog: https://github.com/maybe-finance/maybe/compare/v0.2.0...v0.3.0

    Downloads
    • Source Code (ZIP)
    • Source Code (TAR.GZ)
  • v0.2.0 bac2e64c19
    Compare

    v0.2.0 Stable

    zachgoll released this 2024-12-14 01:16:21 +08:00 | 578 commits to main since this release

    Plaid Integration + Multi-currency Investment Portfolio Support

    We have completed the first pass at our fully automated bank syncing with Plaid on our hosted version of the app!

    Automated bank syncing is a huge milestone for the app and includes many UI improvements, accuracy improvements, and bug fixes:

    • Editing transactions is now much smoother
    • Account history can be calculated chronologically and reverse-chronologically (required for Plaid accounts)
    • Multi-currency investment accounts are now available
    • Investment accounts now properly calculate "brokerage cash" vs. "holdings value" and break this out clearly in the view
    • Investment accounts calculate cost basis more accurately

    CleanShot 2024-12-13 at 12 31 03

    Can I self-host Plaid?

    As an open-source project, self-hosters are more than welcome to configure (and pay for) their own Plaid accounts. You can see the .env.example file for the required api keys that need to be provided to the app.

    That said, due to the complexity around OAuth, Plaid's pricing structure, and costs associated with a personal Plaid subscription, we will not be officially supporting this setup. The hosted version of our app has full Plaid support and is our recommended way to get access to automated bank syncing (more invites coming soon!).

    What's Changed

    • Fix registration fails silently when there are errors by @tonyvince in https://github.com/maybe-finance/maybe/pull/1455
    • Adds a common DE date format by @sbehrends in https://github.com/maybe-finance/maybe/pull/1445
    • Basic Plaid Integration by @zachgoll in https://github.com/maybe-finance/maybe/pull/1433
    • Make encryption config optional for self hosting users by @zachgoll in https://github.com/maybe-finance/maybe/pull/1476
    • Allow custom column separator for CSV parsing in uploads controller by @acflint in https://github.com/maybe-finance/maybe/pull/1470
    • Fix transfers and form currencies by @zachgoll in https://github.com/maybe-finance/maybe/pull/1477
    • Don't refresh page when transaction details are edited by @zachgoll in https://github.com/maybe-finance/maybe/pull/1479
    • Add post-sync UI stream updates by @zachgoll in https://github.com/maybe-finance/maybe/pull/1482
    • Calculates trend based on previous transaction's balance on the same date by @nicogaldamez in https://github.com/maybe-finance/maybe/pull/1483
    • Replaced Native Scrollbars with Tailwind Scrollbars on Windows by @jestinjoshi in https://github.com/maybe-finance/maybe/pull/1493
    • Fix bug: Loan % doesn't allow exact rate by @arsenstorm in https://github.com/maybe-finance/maybe/pull/1492
    • Fix Account Disabling UI by @arsenstorm in https://github.com/maybe-finance/maybe/pull/1491
    • Feature: Add support for customized synth URL from env variable by @Evlos in https://github.com/maybe-finance/maybe/pull/1490
    • Synth error handling by @Shpigford in https://github.com/maybe-finance/maybe/pull/1502
    • Updated usage check threshold to 100pc instead of 1 by @nikhilbadyal in https://github.com/maybe-finance/maybe/pull/1504
    • Improve account transaction, trade, and valuation editing and sync experience by @zachgoll in https://github.com/maybe-finance/maybe/pull/1506
    • Handle invalid API key by @nikhilbadyal in https://github.com/maybe-finance/maybe/pull/1515
    • Plaid portfolio sync algorithm and calculation improvements by @zachgoll in https://github.com/maybe-finance/maybe/pull/1526
    • Plaid sync tests and multi-currency investment support by @zachgoll in https://github.com/maybe-finance/maybe/pull/1531

    New Contributors

    • @sbehrends made their first contribution in https://github.com/maybe-finance/maybe/pull/1445
    • @acflint made their first contribution in https://github.com/maybe-finance/maybe/pull/1470
    • @Evlos made their first contribution in https://github.com/maybe-finance/maybe/pull/1490
    • @nikhilbadyal made their first contribution in https://github.com/maybe-finance/maybe/pull/1504

    Full Changelog: https://github.com/maybe-finance/maybe/compare/v0.1.0...v0.2.0

    Downloads
    • Source Code (ZIP)
    • Source Code (TAR.GZ)
  • v0.2.0-alpha.2 56ab092f6b
    Compare

    v0.2.0-alpha.2 Pre-Release

    zachgoll released this 2024-11-09 03:55:56 +08:00 | 646 commits to main since this release

    Activity View

    Alongside several bug fixes, this pre-release comes with a brand new "Activity View" based on tons of user feedback. This new activity view allows you to see the chronological updates of each account all in one place. In addition, it should how each transaction and balance update affects the overall historical balance on the account. You can see it in action below:

    https://github.com/user-attachments/assets/2ef7e691-a2fe-4dc6-b8bb-0896b9634258

    What's Changed

    • Remove dependency on stock exchange table by @Shpigford in https://github.com/maybe-finance/maybe/pull/1368
    • fix bulk action bar positioning by @gariasf in https://github.com/maybe-finance/maybe/pull/1370
    • Stock filter by @Shpigford in https://github.com/maybe-finance/maybe/pull/1376
    • Remove missing prices issue by @zachgoll in https://github.com/maybe-finance/maybe/pull/1390
    • First pass at security price reference by @Shpigford in https://github.com/maybe-finance/maybe/pull/1388
    • Initial pass at Synth-based ticker selection by @Shpigford in https://github.com/maybe-finance/maybe/pull/1392
    • Groundwork for security info by @Shpigford in https://github.com/maybe-finance/maybe/pull/1396
    • Adds condition to skip link to transaction form if it's not editable by @nicogaldamez in https://github.com/maybe-finance/maybe/pull/1394
    • Do not include income transactions in liability accounts for savings rate by @tonyvince in https://github.com/maybe-finance/maybe/pull/1385
    • Auto naming of Transfer Transaction by @Harry-kp in https://github.com/maybe-finance/maybe/pull/1393
    • Family invites by @Shpigford in https://github.com/maybe-finance/maybe/pull/1397
    • En translation fix by @alekseyp in https://github.com/maybe-finance/maybe/pull/1401
    • Account Activity View + Account Forms by @zachgoll in https://github.com/maybe-finance/maybe/pull/1406
    • Fix account names are not truncated properly by @tonyvince in https://github.com/maybe-finance/maybe/pull/1431
    • Exclude inactive accounts from net-worth calculation and from sidebar by @tonyvince in https://github.com/maybe-finance/maybe/pull/1432
    • Fix timeframe dropdown next to Portfolio by @tonyvince in https://github.com/maybe-finance/maybe/pull/1434
    • Skip account valuation on entry balance_after_entry by @bruno-costanzo in https://github.com/maybe-finance/maybe/pull/1435
    • Fix duplicate invites by @tonyvince in https://github.com/maybe-finance/maybe/pull/1437

    New Contributors

    • @alekseyp made their first contribution in https://github.com/maybe-finance/maybe/pull/1401
    • @3zcurdia made their first contribution in https://github.com/maybe-finance/maybe/pull/1402

    Full Changelog: https://github.com/maybe-finance/maybe/compare/v0.2.0-alpha.1...v0.2.0-alpha.2

    Downloads
    • Source Code (ZIP)
    • Source Code (TAR.GZ)
  • v0.2.0-alpha.1 b75b41a5e2
    Compare

    v0.2.0-alpha.1 Pre-Release

    zachgoll released this 2024-10-25 21:37:50 +08:00 | 687 commits to main since this release

    Improved Account Flows + Onboarding

    With this release, we kick off work towards v0.2.0, which will add a basic bank provider integration (Plaid)!

    In this release, we've added onboarding to the app so that users can select all of their preferences along with much simpler and intuitive account addition flows.

    Here's a quick demo of how easy it is to get started with Maybe!

    https://github.com/user-attachments/assets/dfdd88cb-23f4-40b8-b487-d97add9617fa

    What's Changed

    • Add period to value delete modal by @ahatzz11 in https://github.com/maybe-finance/maybe/pull/1297
    • Add BiomeJS for Linting and Formatting JavaScript relates to #1295 by @oxdev03 in https://github.com/maybe-finance/maybe/pull/1299
    • Accounts in sidebar should be ordered the same as in the accounts summary page by @tonyvince in https://github.com/maybe-finance/maybe/pull/1318
    • add dashboard account pill tooltips by @gariasf in https://github.com/maybe-finance/maybe/pull/1315
    • Redirect upload step by @enderahmetyurt in https://github.com/maybe-finance/maybe/pull/1323
    • Impersonation by @Shpigford in https://github.com/maybe-finance/maybe/pull/1325
    • Rework account views and addition flow by @zachgoll in https://github.com/maybe-finance/maybe/pull/1324
    • Basic account onboarding by @zachgoll in https://github.com/maybe-finance/maybe/pull/1328
    • Fixes issue with mapping values during the transactions import by @nicogaldamez in https://github.com/maybe-finance/maybe/pull/1327
    • Stock Exchanges with seed by @Shpigford in https://github.com/maybe-finance/maybe/pull/1351
    • User Onboarding + Bug Fixes by @zachgoll in https://github.com/maybe-finance/maybe/pull/1352
    • Beta Testing Round 3 Bug Fixes by @zachgoll in https://github.com/maybe-finance/maybe/pull/1357
    • Add good job dashboard with auth by @zachgoll in https://github.com/maybe-finance/maybe/pull/1364
    • Stock imports by @Shpigford in https://github.com/maybe-finance/maybe/pull/1363
    • Feature | Filter on uncategorized transactions by @bruno-costanzo in https://github.com/maybe-finance/maybe/pull/1359

    New Contributors

    • @oxdev03 made their first contribution in https://github.com/maybe-finance/maybe/pull/1299
    • @enderahmetyurt made their first contribution in https://github.com/maybe-finance/maybe/pull/1323
    • @nicogaldamez made their first contribution in https://github.com/maybe-finance/maybe/pull/1327
    • @bruno-costanzo made their first contribution in https://github.com/maybe-finance/maybe/pull/1359

    Full Changelog: https://github.com/maybe-finance/maybe/compare/v0.1.0...v0.2.0-alpha.1

    Downloads
    • Source Code (ZIP)
    • Source Code (TAR.GZ)
  • v0.1.0 d9f11e002a
    Compare

    v0.1.0 Stable

    zachgoll released this 2024-10-12 01:15:46 +08:00 | 736 commits to main since this release

    We're live! 🌮 🥳

    the-office-the

    After hundreds of contributors and hundreds of thousands of lines of code, v0.1.0 is here!

    This release comes with a TON of bug fixes and marks the launch of "hosted" Maybe. We've still got a ton of work ahead, but we're excited to release our first production-ready version of Maybe.

    We're currently in a private, invite-only alpha. Be sure to join our Discord for announcements when new spots become available!

    In this first version, you can:

    • Add all of your accounts
    • Import accounts, transactions, and trades by CSV
    • See your net worth, total spending, and total income
    • Manage transactions (categories, tags, notes)
    • Manage investment portfolios (buys, sells, deposits, withdrawals)

    After we incorporate all the feedback coming in, our hosted app will be introducing automated bank syncing!

    What's Changed

    • Hide currency for transfers by @zachgoll in https://github.com/maybe-finance/maybe/pull/1260
    • Hide infinity trend percentage changes by @zachgoll in https://github.com/maybe-finance/maybe/pull/1261
    • Finalize other assets and liabilities view by @zachgoll in https://github.com/maybe-finance/maybe/pull/1264
    • Intercom integration by @Shpigford in https://github.com/maybe-finance/maybe/pull/1267
    • Add empty states to account summary page by @zachgoll in https://github.com/maybe-finance/maybe/pull/1265
    • Billing by @Shpigford in https://github.com/maybe-finance/maybe/pull/1269
    • Add loan and credit card views by @zachgoll in https://github.com/maybe-finance/maybe/pull/1268
    • Set 3000 as the default web port by @alagos in https://github.com/maybe-finance/maybe/pull/1215
    • Fix account pill on dashboard by @zachgoll in https://github.com/maybe-finance/maybe/pull/1270
    • Early access by @Shpigford in https://github.com/maybe-finance/maybe/pull/1272
    • Basic trade and holdings view by @zachgoll in https://github.com/maybe-finance/maybe/pull/1271
    • Link to CSV imports by @zachgoll in https://github.com/maybe-finance/maybe/pull/1273
    • Bug fixes for specialized account pages by @zachgoll in https://github.com/maybe-finance/maybe/pull/1275
    • Fix currency formatting for 0 values by @zachgoll in https://github.com/maybe-finance/maybe/pull/1276
    • Fix group trend color by @zachgoll in https://github.com/maybe-finance/maybe/pull/1277
    • fix: use correct delimiter on credit card zero values by @gariasf in https://github.com/maybe-finance/maybe/pull/1280
    • fix: amend inputs on loan, c.c., vehicle, and property partials by @gariasf in https://github.com/maybe-finance/maybe/pull/1281
    • Better import instructions, remove ambiguous field by @zachgoll in https://github.com/maybe-finance/maybe/pull/1284
    • Allow inline account creation when importing CSV by @zachgoll in https://github.com/maybe-finance/maybe/pull/1291
    • Minor improvements to categories & changelog pages by @arsenstorm in https://github.com/maybe-finance/maybe/pull/1274
    • Handle market holidays during holding sync by @zachgoll in https://github.com/maybe-finance/maybe/pull/1292
    • fix: default value if user's name isn't set by @ajmeese7 in https://github.com/maybe-finance/maybe/pull/1262
    • Add additional subtypes, add None option, prefill edit with previously selected option. by @ahatzz11 in https://github.com/maybe-finance/maybe/pull/1286

    New Contributors

    • @gariasf made their first contribution in https://github.com/maybe-finance/maybe/pull/1280
    • @arsenstorm made their first contribution in https://github.com/maybe-finance/maybe/pull/1274
    • @ajmeese7 made their first contribution in https://github.com/maybe-finance/maybe/pull/1262
    • @ahatzz11 made their first contribution in https://github.com/maybe-finance/maybe/pull/1286

    Full Changelog: https://github.com/maybe-finance/maybe/compare/v0.1.0-alpha.18...v0.1.0

    Downloads
    • Source Code (ZIP)
    • Source Code (TAR.GZ)
First Previous 1 2 3 Next Last
Powered by Gitea Page: 244ms Template: 10ms
English
Bahasa Indonesia Deutsch English Español Français Gaeilge Italiano Latviešu Magyar nyelv Nederlands Polski Português de Portugal Português do Brasil Suomi Svenska Türkçe Čeština Ελληνικά Български Русский Українська فارسی മലയാളം 日本語 简体中文 繁體中文(台灣) 繁體中文(香港) 한국어
Licenses API