Personal budget software for the rest of us
In this document I list the suggested standard formatting for Buddi. I try to stick to this as closely as possible, both for reports and for core functions as well. If you, as a plugin developer, attempts to do the same, your plugins will look and feel more as users expect.
- Account balances reflect net worth. If a credit account it negative, the net worth is positive.
- Credit account / TypeTotal Names should show up Red; Debit should show as Black, regardless of totals
- Account / TypeTotal Balance Amounts should display based on the following table:
Debit Credit Value >= 0 Black Value < 0 Red, Negative Value > 0 Black, Negative Value <= 0 Red
- Categories are all shown as positive, regardless of income. We therefore have to use special logic for the expense ones.
- Expense Category names should show up Red; Income as Black, regardless of totals
- Category Budgeted Amounts should show up based on the table below:
Income Expense Value >= 0 Black Red, Negative Value < 0 Red, Negative Black
- All transaction text (non-numerical) should be black
- Balances should show according to the rules for accounts above, based on which account the given transaction window is open for
- Transfer Amounts should display as follows:
Amount+ <= This Account: Red, Positive, Left Column
Amount- <= This Account: Black, Negative, Left Column
Amount+ => This Account: Black, Positive, Right Column
Amount- => This Account: Red, Negative, Right Column
If there is no associated account (i.e., for some reports), Transaction values should display as follows:
From To + / - Color A A + Black A A - Red A C + Red A C - Black C A + Black C A - Red
Simplified, this is equivalent to "If (To == Category AND Value >= 0) OR (To == Account AND Value < 0), then color is Red; otherwise, color is Black."
Generic account totals should always be expressed as a Debit account. The only exception to this is TypeTotal when the type is credit; in this case, they should be shown as a Credit account
Standard Report / Graph Format
When creating reports, it is recommended to follow this approximate outline. Note that you can use the HtmlHelper method to assist with creating this format.