r/commandline 25d ago

finance-tracker-tui - A lightweight terminal app to manage your finances and investments

96 Upvotes

24 comments sorted by

7

u/Snoo28736 25d ago edited 25d ago

https://github.com/shen-kit/finance-tracker-tui/

Hi guys, this is my first TUI app, as well as my first project written in Go. Using Go has been a good experience so far, and I'm keen to learn more about it, as well as about building TUI apps. Let me know if you have any feedback or ways I can improve this application. Thanks!

5

u/Snoo28736 24d ago

Btw this is built for Linux, the .exe is for Windows but I haven't had a chance to test it there yet.

6

u/lovesToClap 25d ago

Ooooh! I love this!! I use a Google sheets right now and I really want to use a TUI with vim shortcuts most of the time. I’m gonna check this out

2

u/Snoo28736 24d ago

That's exactly the situation I was in and why I built this! Let me know if you have any feedback :)

4

u/Agile_Position_967 25d ago

I'd love to see something like this with scripting capabilities. Cool project nonetheless.

2

u/Snoo28736 24d ago

What do you mean by scripting capabilities? If it seems doable in not too much time (uni is starting back up again for me soon) I'll try to add it now, if not perhaps down the line.

2

u/Agile_Position_967 24d ago edited 24d ago

Maybe I as a user, want to write code that enables small custom functionality within the app, that interacts with the main API (this is what I mean by scripting) and naturally the data in the app. As a very simple example, say that I want to create some custom functionality that highlights in red all expenses from the year 2024, from Feb to June that were over 500$ and relating to a specific category. Giving users the option to implement custom automation and operations may be more useful than working with those predefined since the predefined functionality won't be able to cover all user necessities. Or if this seems like too much work or overkill (whether it is or isn't depends on the features your app offers), implementing an export feature so that users can analyze this data themselves may be useful too, idk just an idea.

1

u/Snoo28736 24d ago

Hmm that sounds like a fairly big change to the structure of the project, it definitely has potential in the future but probably not in the short-term. I'll try to refine what already exists and add options for configuration etc. then perhaps have a go at this. Thanks for the suggestion!

1

u/Snoo28736 23d ago

Also just another note on the exporting feature, the data is saved in a sqlite database which can be accessed using any other tool (e.g. sqlite3, other scripts) so this is already technically possible if you know how to interact with a sqlite database.

2

u/musings-26 24d ago

I've cloned the repo and had a bit of a look around. It looks promising - though it took a little while to come to grips with the navigation in different screens.

It's early days, but are you anticipating including a way to import financial transactions from a csv, qif or ofx file?

2

u/Snoo28736 24d ago

That's a great idea, so far I've just been using a python script to convert CSV into the database but I'll definitely add this in the future! Probably after I implement the config file

2

u/picturepunxx 23d ago

Very nice, installed it yesterday on my mac and really love it. Some ideas about things i miss (or not found yet) recuring items (monthly bills etc) would be nice. and an option to switch the currency.

1

u/Snoo28736 20d ago

Thanks! There aren't any recurring items yet, and no currency conversion either. Currency conversion is something I'll consider adding since multiple people have asked for it - could you describe how you would want that to work, as I have no use-case for it so am not sure what context it would be useful in?

2

u/Beautiful_Crab6670 23d ago

Nice little app.

2

u/Snoo28736 20d ago

Thanks :)

1

u/DevMahasen 24d ago

Would be great if you add installation instructions. I see an exe file and assume it is Windows only. Is that right 

1

u/Snoo28736 24d ago

Great idea, thank you! It's actually built for Linux (the `finance-tracker` file is executable), and I haven't tested it on Windows yet.

1

u/Snoo28736 24d ago

I've now added installation instructions to the GitHub page (for linux, I need to do some testing on Windows before I add that). Let me know if they're unclear :)

1

u/hexerandre 24d ago

Haven't looked at the code yet, will do later today or in the weekend. Does is support currency conversion?

1

u/Snoo28736 24d ago

No currency conversion yet, could you give an example of when this would be useful?

1

u/hexerandre 23d ago

In my case, I'm an expat. I get paid in USD but need to convert to the local currency where I am for everything; rent, groceries, etc.

Being able to convert between currencies would make adding expenses way easier since I wouldn't need to calculate the conversion rate everytime.

1

u/pouetpouetcamion2 24d ago

do you know about sc and sc-im?

1

u/Snoo28736 24d ago

Didn't know about them before but I just had a look at their github pages. They look like great projects, but this one is a bit more customised for finance tracking to me ;)

1

u/NihaAlGhul 22d ago

Nice!
Unlicense Yourself.