Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/githubuseraccountamazing/cashtrack

CashTrack is a powerful tool that helps you split bills without splitting them. It's easy to use and helps you keep track of your expenses with a friend or family member.
https://github.com/githubuseraccountamazing/cashtrack

automation bash bill-splitting budgeting command-line d-bus dbus finance linux messaging messaging-services money-management peer-to-peer personal-finance signal signal-cli signal-messenger sqlite3

Last synced: 1 day ago
JSON representation

CashTrack is a powerful tool that helps you split bills without splitting them. It's easy to use and helps you keep track of your expenses with a friend or family member.

Awesome Lists containing this project

README

        


cashTrack:sparkles:

####

Split the bill without splitting the bill




cash track example




CashTrack is a powerful tool that helps you split bills without splitting them. It's easy to use and helps you keep track of your expenses with a friend or family member.

CashTrack is a bash script that allows two people to pay for each other for various bills such as groceries, rent, gas, etc. It leverages signal-cli to track who has been spending more and allows the other person to make up the difference by spending money on the next bill. The goal is to keep the difference spent between both individuals around 0 dollars. All transactions are stored in an SQL database and each user can use the Signal messenger application to *virtually* send and request money. This tool is intended to be used with a dedicated signal account.

## Installation
1. In a virtual machine, install signal-cli: https://github.com/AsamK/signal-cli
2. Create a new Signal account. (The phone number for this account will be the $USERNAME)
3. Install sqlite3: apt install sqlite3
4. Clone this repository: `git clone https://github.com/originates/cashTrack.git`

## Setup
1. Navigate to the cloned repository: `cd cashTrack`
2. Modify the signal names and phone numbers in cashTrack to match the 2 users who will be using cashTrack
- perA="EXAMPLE USER A"
- perB="EXAMPLE USER B"
- Aphone=15555555555
- Bphone=15555555555
3. start the signal-cli daemon using `signal-cli -u "$USERNAME" daemon &> "/dev/null" &`
4. Run `./cashTrack` to start the program.

## Usage

To use the program, users can use the following commands:
- `r ` for request
- `s ` for send
- `xx` to remove the last entry

CashTrack Example Usage:

1.) Erica and Sam go to a coffee shop. Erica buys a coffee as well as a coffee and a donut for Sam.

2.) Erica then sends the message `r 6.04 coffee and donut` to signal-bot since she wants to request that money from Sam.


This will add 6.04 to Erica's balance and subtract 6.04 from Sam's balance.

Both users will be notified instantly that the transaction succeeded and will tell them their new balance.

The message will also include the note 'coffee and donut.'

## Reporting Bugs or Issues
If you find any bugs or issues with this project, please open an issue on GitHub.

## License
```
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see .
```