I’m wanting to build an “app” for a simple budget.
It will consist of a few very normal datasets, for example a list of expenses or any expense you want to track for a monthly budget. (note that each month needs a new budget based on the last one, so every month needs a new copy of the table, or??
Another table will be a list of expected income for the month. Simple enough, it needs to track whether the amount is absolute or unknown, when the income is expected to hit the bank, whether it’s been deposited yet or not, etc. I have to adjust these numbers almost daily. Add a new income, change a date, update an amount, update estimates, etc.
Then I’ll need a bunch of logic in relation to how all the numbers are crunching on any given day. For example, there is going to be a balance where dates are concerned, like if I have $500 in the bank, but I have $450 in bills due BEFORE my next “expected” income deposit, then my app would tell me something like “be sure you don’t spend more than $50 if you want to get the bills paid on time before your next deposit on the 15th.” In other words, I know that I only have $50 available to spend for the next X days.
Or likewise, let’s say I have $500 in the bank of various bills due in the next week, but the bills due are $600 and I don’t have any deposits expected before then. The app would warn me that I need to get some more money to make the bills on time, and I have no extra cash at this time. A warning condition, essentially.
Another thing the app will calculate is how much money is expendable. So if I have $1000 in the bank and $500 in bills due, but also another $500 in income expected (etc), the app will tell me at any given time how much money I have beyond getting all the bills paid. It’ll say I have $500 expendable income up until the 20th, where I’ll have another $500 expendable. And then give a grand total for the whole monthly budget, saying I have $1000 expendable once all the bills are paid. In other words, if I make more money than the expenses, it will show this, of course.
As a general rule, if my entire monthly expense list is $3000 and my entire (estimated) income list is $4000, then as a general rule I know I have $1000 in expendable income. However, it doesn’t mean this $1000 is available to spend all by the 10th of the month, it depends when the bills are due and when the income is being deposited. So this budget app is essentially giving me these numbers whenever I check it and update it.
I might have $1000 as a whole, but maybe that is only $100 in week 1, $400 more in week 2, etc. I need to know when that expendable income is available in relation to bills and income.
The budget is based on a lot of logic like this. For example dates. Expenses might be fixed, or variable, which means I need to mark these amounts as being unknown, or known, or estimated amounts. They might be monthly on the same day, or every 3 months or every year. They might even be random, added just for this month only.
Some bills are paid automatically, some manually, and some are paid automatically from a credit card, so I have to pay back the card, not the checking account. My budget has to handle at least 2 bank accounts where bills are paid.
If I mark something down as a yearly expense, like car tags for $100, I don’t really want to see this on my budget all the time, but I might want to save up for it somehow, like a “savings” expense specifically earmarked for that bill/expense. Somehow this kind of thing will need to be built in. Perhaps another table of “long term” expenses needs to be added, which is apart from the monthly budget table.
As you can see, the dates play a very important role. If I have $0 in the bank with a $50 bill due in 5 days, but my next expected deposit is not until the 6th, I want to see a warning about this, so I can either pay the bill late, or transfer money from somewhere, or go do some quick work for a quick deposit, or whatever. The dates of expenses directly correlate with dates of expected income, so that I can calculate various data regarding expendable income, or whether I’m net positive or negative with cash flow.
Everything calculates based only on updating my current balance in the bank(s). I don’t need the app to connect to the bank, pull in transactions, or do anything at all. I can do that manually. I will open the app, and simply type what my current balance is. This way, the app can always calculate expenses and income based on my current available balances.
Plus I will mark each expense and income as being paid or deposited, so that the numbers will update.
All that said, I just want to open the app every couple days, update which expenses are paid, update which income is deposited or coming in, update the current bank balances, and then see how all the numbers crunch.
I’m only looking to see if there are any Coda “budget” apps already out there which might give me a head start, otherwise, I’m designing this thing from scratch and could use any pointers you might have.