Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - asromzek

Pages: [1] 2 3
Other / Mobile App Beta 2.0.0-beta.10 (Minor Updates & Bug Fixes)
« on: July 24, 2019, 10:57:16 PM »
Disclaimer: Backup your budget before testing the beta mobile app, and make sure to pay attention to the recommendations that were posted here to avoid bloating your database:

  • Added 100m radius circle to payee location map, which indicates the area you should be in for the app to automatically detect the payee when entering a transaction.
  • Rendered all other payee locations when viewing/editing a payee location on the map.
  • Increased default map zoom slightly.
  • Removed shadow from amount bubbles. Kept shadow for text within bubbles for readability.
  • Cut all animation times in half to make the app feel snappier.
  • Fixed text editor now allowing duplicates in certain cases when it should.
  • Updated note editor icon and added slide effect to account note editor.
  • Added slider switch to disable saving location for a payee (functionality not implemented yet).
  • Fixed app not indicating when a subscription has ended.
  • Fixed all documents not being deleted when removing a budget. Only the main budget document was deleted leaving orphan documents for all other objects.
  • Fixed app not jumping back to Home when the current budget is deleted on another device.

Up Next
I realized after pushing the update that disabling location saving for individual payees was not fully implemented. I will take care of that in the next release along with improving the location saving interface in the transaction editor. Transaction search still needs to be enhanced, and payee searching will also be added at some point.

Beta App:
Current App:

Other / Mobile App Beta 2.0.0-beta.8 (Geo-located Payees!)
« on: July 18, 2019, 11:08:53 PM »
Disclaimer: Backup your budget before testing the beta mobile app, and make sure to pay attention to the recommendations that were posted here to avoid bloating your database:

Double Disclaimer: This is a big update, so a backup is double recommended.

Changes/Fixes (Where to start...)
  • Updated entire app font from Verdana (default) to Robtoto
  • Adjusted amount bubble value shadows to make them appear as if they are popping out instead of sinking into the bubble.
  • Added transaction search box placeholder text.
  • Removed auto-focus on some of the textboxes since it doesn't work well on iOS.
  • Migrated app project to vue-cli 3/webpack 4. This was a major change that brings the entire project to up to current.
  • Replaced "mathjs" library with "expr-eval" to fix calculator math bug after updating the project. (A total day was wasted fighting with that)
  • Fixed back button navigation issues when certain editors are open.
  • Enabled location services for geo-located payee feature.
  • Overhauled payee manager and payee combining editor.
  • Added the ability to clear all location data from the payee editor view.
  • Added a filter to display only payees that have location data saved.
  • Added transaction list to payee editor. This list displays all of the transactions linked to the payee.
  • Added saved location list to payee editor. The coordinates and distance/direction to payee are calculated and listed for each. Individual locations can be deleted.
  • Added saved location editor. The default category for the payee/location can be changed, and a the location can be changed by dragging a pin around on an embedded map.
  • Added location saving when entering a transaction when location services are enabled. The category chosen is linked to the payee at that location for future transactions.
  • Added a banner warning that is displayed if the location services setting is enabled in the app and the browser is set to block location lookups.
  • Updated pouchdb library to v7.10 which forces IndexedDB usage. This results in the 50MB database size limit being removed when using iOS (I think).
  • A bunch of other small refinements that were lost in the mix when committing the bigger changes.

Geo-Located Payees
I have been working on this feature for over a year (on and off), and it's finally, finally, finally working. With the beta, I am not going to give any hints as to how the feature works. I want to see how intuitive it is for every to use, and any feedback regarding issues or improvements that can be made is more than welcome. This feature is disabled by default and can be turned on via the main app settings. Once enabled, the app will attempt to use your mobile device's GPS receiver through the browser to record payee locations when entering transactions. When starting a new transaction the app will attempt to use your current location to lookup payees that may be in range based on saved location data from previous transactions. The location data is saved in the budget file so multiple devices can share the payee information.

Up Next
Geo-located payees was the last major feature that I wanted to add to the mobile app. I am going to slow down a bit and let the dust settle before making anymore major changes. The next beta version will likely be refinements and bug fixes based on internal testing and feedback from users. Again, please provide any feedback that you may have, good or bad.

Beta App:
Current App:

Disclaimer: Backup your budget before testing the beta mobile app, and make sure to pay attention to the recommendations that were posted here to avoid bloating your database:

  • Implemented the All Accounts view which displays a combined list of transactions from all on-budget and off-budget accounts.
  • Added basic transaction search.
  • Fixed transaction memo editor not accepting blank memo value.

Transaction Search
Basic transaction search is now available on the Account view. Look for the magnifying glass icon next to the account balance values, and tap the icon to toggle the search box. Typing a value in the search box will filter the transactions based on matches found in the following list of fields. All search terms must be present in at least one of the fields for the transaction to be included in the results. This is just a first revision so there may be some bugs and odd behavior.  Let me know if you have any issues or a specific type of search that you would like added!
  • Payee
  • Category
  • Memo
  • Amount

Up Next
Geo-located payees is a feature that I have been missing, and it's about time to finish the implementation since it's the last major feature that I have planned for the mobile app. I started working on it last year and ran into quite a few UI/UX issues, and that spurred the complete app rewrite. Now that all of that is out of the way, I can finally get back to business. The goal is to utilize the GPS receiver on your mobile device (which should be available to the browser) to add location memory for a payee when entering a transaction on the go. When adding a new transaction in the future, the mobile app should look for payees that are within a certain physical range from where you are currently standing and either auto-fill the payee or give you a short list of nearby payees to choose from. This should speed up transaction entry considerably for frequently visited payees. Of course, this will be an optional feature that will have to be explicitly enabled in the mobile app settings.

Beta App:
Current App:

Other / Mobile App Beta 2.0.0-beta.6 (Bug Fixes & Minor Improvements)
« on: July 13, 2019, 12:45:12 AM »
Disclaimer: Backup your budget before testing the beta mobile app, and make sure to pay attention to the recommendations that were posted here to avoid bloating your database:

  • Fixed multiple instances where clicking the browser back button would not cancel active editors correctly.
  • Added the ability to display the account name for a transaction in a list. This is only active in the budget view when listing the outflow transactions for a category.
  • Account reconciliation balance values can now be entered as positive numbers for accounts that have a negative balance. This matches the functionality in the main app.
  • Minor UI cleanup.

Summary/Up Next
I didn't have a lot of time this week, so most of the changes are bug fixes or minor changes. There is currently a known bug in the memo editor where the app will not allow blank memos to be saved. You can get around this temporarily by typing a value in and then immediately clearing it, and the Save button should then become active (I think). This was discovered shortly after building the beta app, and it's too late in the evening to fix it, so I'll get it tomorrow. The "All Accounts" view will be coming next, which is why the ability to display the account name in the transaction item view was added. You can see how it looks when tapping on the Outflow for a category that has transactions for the month in the budget view.

Beta App:
Current App:

Disclaimer: Backup your budget before testing the beta mobile app, and make sure to pay attention to the recommendations that were posted here to avoid bloating your database:

  • A spinner is shown next to the budget name when opening to give better feedback that the app is working.
  • The transaction category editor automatically scrolls to the previously selected category if one is set.
  • Pinned categories are shown at the top of the list in the transaction category editor.
  • Split editor displays the transaction total, other splits total, current split value, and remaining value above header.
  • A "Cover Remaining" button was added to split editor to set the current split's value so the remaining amount is zeroed.
  • Minor UI cleanup.

Up Next
Transaction search will have to wait until a future release since I want to do it right, and it's going to take some significant work to wedge it into the UI. I am envisioning both a simple search that will filter based on all fields, and an advanced search that can be used to specify which fields to search in (payee, category, memo, etc.) and/or in a range (date, amount). I also want to get the All Accounts view working since that has always been just a static display of the budget total. To do that I need to figure out how to display the account name with each transaction in the list, which will be interesting to figure out considering how packed each transaction line already is.

Beta App:
Current App:

Other / Mobile App Beta 2.0.0-beta.4 (Account Reconciliation)
« on: July 06, 2019, 10:24:59 PM »
Disclaimer: Backup your budget before testing the beta mobile app, and make sure to pay attention to the recommendations that were posted here to avoid bloating your database:

  • Account reconciliation was added.
  • Budgets can no longer be opened while the application is syncing.
  • Increased main menu item height.
  • Long budget names will overflow better with an ellipsis in the app header.

Account Reconciliation
This feature is a feature that has been missing in the mobile app for way too long. The long holiday weekend provided the right opportunity to buckle down and get it done. A small button with a lock icon has been added next to the "Add Transaction" button in the Account view. Tapping that button will start the account reconciliation process. The button's icon will change to an "X" and reconciliation can be cancelled at any point in the process by tapping the button again. The process should work the same as in the main Financier app.

Keeping Budgets From Being Opened While Syncing
This was implemented mostly to keep a partially synced budget from being opened on initial login and syncing. I am not certain what the consequences are for opening a partially synced budget on initial sync, so it's better to be safe than sorry.

Up Next
The next version should have improved category selection when adding/editing transactions, and some much needed improvements to the split editor. Both of these areas have been a little clunky and can definitely be improved. Transaction search is also a possibility, but that might be pushed out a little further.

Beta App:
Current App:

Other / Mobile App Beta 2.0.0-beta.3 (Syncing Enabled)
« on: July 04, 2019, 03:47:21 PM »
Disclaimer: Login and syncing capabilities have been re-enabled with v2.0.0-beta.3. Read the following thoroughly before logging in and testing.

The beta app has reached the stage where it is likely stable enough to test against production budgets. Earlier this week I hot-wired a special version to work with my own budget for a few days, and have not encountered any show stopping bugs.

  • Budget import has been disabled (accidentally, but I may leave it out unless there's a specific need).
  • Payee manager has been polished up and re-enabled.
  • The main menu has been cleaned up and icons were added to each menu item.
  • Swipe right on a transaction to toggle clearing/unclearing.
  • Important: Any budget data that was generated or imported with previous versions of the beta app will be discarded. A fresh local budget file will be initialized to avoid polluting your production database with test data.

Avoiding Database Pollution of Deleted Budgets
If you intend to test and then delete temporary budgets, it is important to understand one significant detail about how the CouchDB/PouchDB database syncing works: any data that is deleted is never truly removed from the database. The data is simply flagged as deleted so that any unsynced databases will also flag it as deleted when they sync up with the central Financier CouchDB database.

What this means is that if you create a bunch of test budgets that are synced to the main Financier CouchDB database and then deleted, all of that data will live forever and will be included when initially syncing a new device. This can drastically slow down initial syncing, and it is also a major concern for the mobile app if you are using Safari on iOS since the database has 50MB limit. I managed to exceed this limit during the early days of mobile app development since I was creating/deleting synced budgets constantly using my personal account. I did not realized that my database would eventually become polluted with stale data that cannot be removed, and had to bug @Alex to manually fix my database. I would not recommend this due to the number of virtual eye rolls that were received throughout the process.

Offline Testing
If you would like to test the app without affecting your synced budget(s), it is recommended to log out using the Logout & Clear Local Data menu to avoid having temporary data pollute your synced database.

You can also using Incognito/Private browsing mode without logging in to make sure that any budget data generated is truly temporary.

I recommend offline testing of the beta mobile app if you only want to see how things look and feel compared to the old version, or if you are not brave enough to sync your budget(s) with the beta app.

Online/Synced Testing
If you would like to test the full syncing capability of the beta mobile app using actual production budget(s), I highly recommend backing up your budget(s) using the main Financier app in the rare event that the beta mobile app corrupts data due to an unexpected bug. You can find the Backup Budget menu by clicking the gear icon next to the Add Account button in the main Financier app.

It is also recommended to clear any temporary budget data using the Clear Local Data menu before logging in. Otherwise, any temporary budget data that you have been testing with will be synced to your database causing data pollution.

If you are certain that your local database is cleared of any test data, you can log in to the beta mobile app, your production budget(s) will be synced, and all further changes will be synced to your main Financier account. Again, if you are not comfortable with this I would recommend sticking to offline testing. If you have logged in and synced your data and want to revert to offline testing, simply log out using the Logout & Clear Local Data menu to ensure that all of your production budget(s) data is completely removed from your device.

Beta App:
Current App:

Other / Mobile App Beta 2.0.0-beta.2
« on: July 03, 2019, 03:03:37 PM »
Just a minor update to add some fancy page slide transitions. It was not as easy to implement as it first appeared. Sometimes CSS kicks me in the head more than it should.

Other / Mobile App Beta 2.0.0-beta.1
« on: July 02, 2019, 12:57:22 PM »
Version 2.0.0-beta.1 has been released for testing. It is now possible to import a budget backup from the main Financier app. However, there are a few more steps involved since you will likely be backing up the budget on a PC and importing on a separate mobile device. I have utilized to temporarily store the budget file for the mobile app to import. The following steps can be used to backup and import your budget file to the beta mobile app.

  • Backup and save your budget to a *.json file using the main Financier app. You can access the Backup Budget menu by clicking the gear icon next to the Add Account button.
  • Upload the file to
  • Do not click the link that is presented after the file is uploaded, as the file will be deleted immediately after the first access.
  • Take note of the 6 characters at the end of the link presented. You will need to type these into the mobile app. Example:
  • Open the beta app on your mobile device:
  • Open the main menu by tapping the button in the top left corner and tap the Import Budget menu.
  • Type in the 6 characters for the URL that were presented in step 4, and click the Import Budget button.

If you follow those steps, the app should take you back to the budgets list and your imported budget should be in the list.

Other / Mobile App Beta 2.0.0-beta.0
« on: June 29, 2019, 09:41:59 AM »
It's been a long time since anything new has been released for the mobile app, and today is the day (finally). Beta version 2.0.0-beta.0 is ready to play with, and I'm looking forward to getting some feedback on the UI/UX redesign. The entire app received a major overhaul to make the code much more consistent, and that ended up being a lot more involved than I expected. Since this was my first "real" web app I had no idea what I was doing early on, and some of those pages and components were very difficult to fix. The account and budget views took weeks to rewrite (9 steps back, 10 steps forward). However, it slowly came together and I think the app is decent enough to release for testing. I don't have a lot of time to write up a big post detailing the changes, but the following is a list of highlights.

  • Budgets, accounts, and categories can now be added/edited/deleted in the mobile app.
  • Swiping left on a budget, account, or category will display the Edit/Delete buttons.
  • Tapping a transaction now opens the transaction editor immediately instead of showing the Edit/Remove menu and split sub transactions.
  • Split sub transactions are shown in the account view by long pressing the transaction for about a second.
  • Swiping left and right in the budget view to change months only works on the header now.
  • Countless UI improvements and tweaks. (I spent a lot of time on those amount bubbles. Way too much.)
  • Many, many, many things that I don't have time to list. Play around, you'll see.

Unfortunately, the payee editor is still under construction and has been temporarily removed. My plan is to finish that up and polish the app in several other areas before making it an official release. To help test the beta more thoroughly I am attempting to add a method for importing a budget backup file from the main app. This may be possible by uploading your backup file to pastebin or a similar site, and importing using the link. That way you can see how the beta app looks and reacts with a full existing budget. Stay tuned to see if I can pull that one off.

Once I and everyone else are satisfied with the beta version, I will release it officially and move on to some newer features that I think the mobile app could really use.

  • Account reconciliation.
  • Transaction search.
  • Improved split editor. It definitely needs some work.
  • Account reordering via drag/drop. I don't know why I never implemented this. It's already working with categories.
  • Payee location memory using your phone's GPS. This would be optional, obviously.
  • Multi-language support. I dropped the ball on this, and it will be a "fun" to fix it now.
  • And whatever suggestions that you all may have.

Without further ado, here's the link:

Announcements / Broken SSL with Mobile App
« on: March 21, 2019, 04:37:36 PM »
Looks like I didn't quite prepare for some SSL changes that were coming from Let's Encrypt. The mobile app is not secure and may not work until I can resolve things. Our new human arrived last week so I should have some time between all the feedings and pooping. Stand by...

Other / Mobile App UI Update
« on: February 18, 2019, 10:32:52 AM »
After a number of false starts over the last few months, I finally sat down and put about 8 hours into the mobile app over the weekend. About 1/3 of that time was trying to figure out where I left off and what I was doing back in July. Right now I don't see any light at the end of the tunnel, but I'm going to try to put about 2 hours per evening into the app until the entire app UI code is cleaned up. After that I can finally get back into to working on some of the bells and whistles that I've wanted to add for a long time, as well as some other larger project ideas that I've been kicking around.

We're only a few weeks (or maybe days) away from adding a new human that will be sharing our living space. Most of my time over the last several months has gone into preparing for that, but I think we're finally coasting into the home stretch. I should have a week or two off work to deal with things, so I'm hoping to squeeze some side project development in between child maintenance sessions.

Announcements / Mobile App Server Maintenance
« on: February 04, 2019, 02:15:27 PM »
It's been a while since I updated the Digital Ocean droplet that hosts the mobile app. I'm doing that today, and hopefully future-proofing it against some coming changes to the LetsEncrypt SSL certification system. There should be no major interruptions in service, but you never know...

I'm getting a little rusty. :P

Other / Financier Mobile v1.2.X
« on: July 21, 2018, 02:37:17 AM »
v1.2.0 released: BAM, payee management. You can rename and combine multiple payees into one. All transactions and split sub-transactions are automatically updated when combining. Upgraded from "font awesome" 4 to 5, so some of the icons are going to look a little different (maybe better? maybe not?).

I fought with making this work for hours upon hours upon hours, and found that the core library had a few simple but significant bugs. Nothing damaging to the data integrity, but objects that were supposed to go away (payees that were combined) would stick around annoyingly. After hammering that out, everything that was added looks much simpler than the effort that went into it.

After opening your budget, the payee manager can be accessed through the menu button in the top left of the app. Selecting a single category will allow you to edit it, which only allows for changing the name (for now). Selecting multiple payees will give you the option to combine them into one. I would explain more about how this works, but it's 4am and I'm half asleep.

Other / Financier Mobile v1.1.X
« on: July 15, 2018, 06:33:15 PM »
v1.1.0 released: Added calculator functionality (math!) to the transaction amount editor. This is in preparation for improving the split transaction editor.

Pages: [1] 2 3