command line accounting tool
As a former CPA, I could not resist building my own accounting system.
xyz
time period and 2) what is my financial situation as of right now?yaml
files as data storecsv
files to yaml
formatcargo build --release
to compile the binary/target/release
and copy the rust_ledger
binary in your path - generally /usr/bin
on most unix-based systemsrust_ledger run LEDGER_FILE_PATH COMMAND OPTION
where the following:
register
command by account type. For example, if you wish to only see "expense" transactions in the output, you would pass in expense
as the option here.cargo test
to run the test suite
account | account_type
checking | asset
savings | asset
credit_card | liability
equity | equity
expense_auto | expense
expense_computer | expense
expense_food | expense
expense_gasoline | expense
expense_pets | expense
expense_amazon | expense
expense_home | expense
expense_general | expense
income_general | income
account_type | account | balance
asset | checking | 1,500
asset | savings | 2,000
liability | credit_card | -456
equity | equity | -3,500
expense | expense_auto | 455
expense | expense_computer | 1
expense | expense_food | 0
expense | expense_gasoline | 0
expense | expense_pets | 0
expense | expense_amazon | 0
expense | expense_home | 0
expense | expense_general | 0
income | income_general | 0
check | 0 0
date | debit | acct_name | acct_offset_name | acct_memo
11/4/2019 | 455 | expense_auto | credit_card | car maintenance
11/4/2019 | 1 | expense_computer | credit_card | raspberry pi
csv
files to yaml
format expected by rust_ledger
yaml
file formatyaml
files in the following format:```yaml owner: test_owner currencies: id: $ name: US Dollar alias: USD note: Currency used in the United States
accounts: - id: 0 acctname: checking accttype: asset debitcredit: 1500 - id: 1 acctname: savings accttype: asset debitcredit: 2000 - id: 3 acctname: creditcard accttype: liability debitcredit: 0 - id: 4 acctname: equity accttype: equity debitcredit: -3500 - id: 5 acctname: expenseauto accttype: expense debitcredit: 0 - id: 6 acctname: expensecomputer accttype: expense debitcredit: 0 - id: 7 acctname: expensefood accttype: expense debitcredit: 0 - id: 8 acctname: expensegasoline accttype: expense debitcredit: 0 - id: 9 acctname: expensepets accttype: expense debitcredit: 0 - id: 10 acctname: expenseamazon accttype: expense debitcredit: 0 - id: 11 acctname: expensehome accttype: expense debitcredit: 0 - id: 12 acctname: expensegeneral accttype: expense debitcredit: 0 - id: 13 acctname: incomegeneral accttype: income debit_credit: 0
transactions: - date: 11/4/2019 debitcredit: 455 acctoffsetname: creditcard name: car maintenance accttype: expense acctname: expenseauto - date: 11/4/2019 debitcredit: 1 acctoffsetname: creditcard name: raspberry pi accttype: expense acctname: expensecomputer ```