Skip to content

💳💵📈 Open-source web app for expense tracking and visualizing

License

Notifications You must be signed in to change notification settings

dhruv282/expense-tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Expense Tracker

Streamlit App

Demo Screenshot

Expense Tracker is an open-source expense tracking and visualization program developed using Streamlit. The data is supplied by a user specified Google Sheet. Visualizations generated in this app are created using Plotly.

Usage

A sample Google Sheet compatible with this application can be found here: Test Expense Tracker

The connection to Google Sheets is powered by gsheets-connection. Follow instructions in the repo to connect the desired Google Sheet.

This application supports tracking for expense trackers that involve multiple individuals. Transaction owners can be specified as shown in the example file: .streamlit/secrets.toml.

Running locally

Dependencies can be installed using the following command:

$ pip install -r requirements.txt

Run the following command to start a local instance of this using the Streamlit engine:

$ streamlit run app.py

Configuration

A sample secrets.toml file using all currently available configuration options has been supplied in the .streamlit directory. You can learn more about Streamlit configuration options via the Streamlit docs.

Use the secrets.toml to add the credentials for your own Google Sheet.

Deployment

Follow the official Streamlit deployment guide to host this on the Streamlit Community Cloud.

A Docker image can also be built and deployed for users who prefer alternate hosting solutions. The official Docker installation guide can be found here. Run the following commands to build and run the Docker image.

$ docker build -t expense-tracker .
$ docker run -p 8501:8501 expense-tracker

License

Expense Tracker is open-source software released under the MIT License. You are free to modify and distribute the application under the terms of this license. See the LICENSE file for more information.

Please note that this README file is subject to change as the application evolves. Refer to the latest version of this file in the repository for the most up-to-date information.