This is a small update for desktop:
This is a small followup release to 0.0.104 which caused a couple regressions. That release included a lot of changes so this release is focused stability.
First of all, I want to say sorry. There's no excuse to wait months between releases, and I'm really sorry about that. This is a big release and everything ended up being wrapped into it, but I took it slowly because making sure your data is safely upgraded and works smoothly is of utmost importance to me.
This release has a totally new budgeting backend. I'll blog about this soon, but basically the entire budget used to be implemented internally as a spreadsheet, even with it's own custom language! The original idea was to expose this to the user and allow customization of the budget formulas, but I've learned a lot since then. I still have ideas related to this, but it was silly how complex the previous implementation made everything.
It made everything in the budget slow. If you had a couple years worth of data, adding a category would lag between the time you pressed enter and it actually showed up in the budget. Same with deleting a category, or anything else.
This has been completely fixed. Now, all of the interactions with the budget are instant. The backend is insanely faster, and the frontend has been meticulously optimized to make it feel even faster.
The new budgeting backend should be transparent to you - the budget should work exactly the same way as it did before, and your data should be exactly the same. Let me know if it's not.
This release also has a few other huge features, such as syncing between any devices (desktop-to-desktop), and API, and more!
Along with all these big changes, a new website has been release! This is a total redesign and reflect Actual's values a lot more accurately.
The main reason this happened is I need to write documentation for the API. One thing led to another and now there is a full documentation site about how to use Actual. This will be expanded more over time.
While the budgeting backend allows the budget to update much faster, on the frontend I optimized it even more. The whole UI is now optimistically updated, which means when you make a change it doesn't even wait for the server. It just instantly updates the UI locally.
Additionally, the hover state for budget rows was removed. This allows more specific interactions with the values themselves. When you hover over a budget amount, a faded textbox will appear making it clear that you can edit it. The values in the balance column are now more clearly clickable. This tweaks will always feel instant regardless of the number of categories. (Previously, the row hover state would lag with a huge amount of categories)
You can now edit categories and category groups by hovering and clicking the the drop down menu to reveal several actions. This will make it easier to add more actions in the future, and fixes the confusing interaction of renaming category groups.
A big thank you to Henri Maurer who has helped contribute on this release and implemented this feature!
Another major feature: Actual now has an API! Read the docs on the website.
This gives you full access to your data. The main use case is to write custom importers (if your bank gives you transactions in a specific format), but you can write anything on top of it. This is considered experimental and will stabilize over time.
Previously, only the mobile app could discover a desktop device by reading a QR code with the camera. That flow is simplified now, and Actual uses something called multicast DNS to discover devices. The desktop app puts itself into "broadcasting" mode and another desktop or mobile app will automatically discover it when setting up a new synced file.
See Setting up syncing.
If you want to stay with a certain version of the app for any reason, you can now disable auto-updating in the settings.
The new macOS version Catalina requires apps to be signed in another way, which is funny because the app is already properly code signed. I guess Apple really wants to control everything. Now the app is "notarized" by Apple which means they won't freak out when you try to run it.
The mobile app benefits from the new budgeting backend as well. The performance problems were even worse on mobile devices, but now loading a large budget from another device is far faster, as well as working with the budget.
To celebrate the new budgeting backend, the mobile app can now reorder categories. Move them around and even move them between groups. Just go into edit mode and drag them around. It sounds silly, but previously it was just too slow on mobile devices to do anything with categories. Now that it's all fixed, you'll be able to do everything on mobile. (deleting a category on mobile is coming soon)
Work is heavily underway for undo and an API, stay tuned!
Important note: the new payees feature requires your data format to be updated. You can only do this on desktop, and on first run you will be prompted to perform the update. After updating, syncing the mobile app will update your mobile budget (it may take a while to sync). Make sure you've downloaded the latest mobile app. Your transaction data will look wrong until you've completed this update.
5/3would be interpreted as May 3, 2019
amount:120would show all transactions with amounts of 120.00, and
payee:targetwould only search the payee, etc