Skip to main content

No project description provided

Project description

Firefly Reports

Generate email reports using Firefly's API. There is a wiki which will have more information.

Firefly

Firefly is a free and open source personal finance manager. Firefly Reports adds the ability to get email reports to help keep track of your spending.

Quickstart

To install, you can use pipx:

$ pipx install firefly_reports

or use uv:

$ uv tool install firefly_reports

If using pip, I would suggest using a virtual environment. After installing, you can use --help to get the inputs:

Usage: firefly_reports [OPTIONS] CONFIG_FILE

Options:
  --start_date [%Y-%m-%d]
  --end_date [%Y-%m-%d]
  --help                   Show this message and exit.

By default the start date will be a week from when the program is run and the end date will be the day of the program is run.

Copy example_config.toml to your PC and update the following:

[email]
server = "smtp.gmail.com"
port = 587
starttls = true         # Use STARTTLS
authentication = true   # Login with username and password
user = "your_email_address@gmail.com"
password = "password"
from = "your_email_address@gmail.com"
to = ["email1@example.com","email2@example.com"]

[firefly]
url = "http://firefly_instance:8085"
access_token = "your_api_access_token_key"

I verified that using Gmail works but haven't checked other email providers. Look at Firefly's documentation to get your access token.

Reports

Currently only one report is supported. This report will include the following:

  • Categories (income and expenses).
  • Total amount spent between the start and end dates.
  • Total amount earned between the start and end dates.
  • Total amount spent so far for the calendar year.
  • Total amount earned so far for the calendar year.

Development

The recommended way is to use uv:

$ git clone git@github.com:cetyler/firefly_reports.git
$ uv venv --python 3.13
Using Python 3.13
Creating virtualenv at: .venv
Activate with: source .venv/bin/activate
$ source .venv/bin/activate
$ uv sync --dev

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

firefly_reports-0.2.2.tar.gz (22.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

firefly_reports-0.2.2-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file firefly_reports-0.2.2.tar.gz.

File metadata

  • Download URL: firefly_reports-0.2.2.tar.gz
  • Upload date:
  • Size: 22.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.7.9

File hashes

Hashes for firefly_reports-0.2.2.tar.gz
Algorithm Hash digest
SHA256 222456c1db457f94308266f18335283226664a75404ee7f88d1d02894e428114
MD5 2b523b1af69689e0f5bfe093a6a5c27f
BLAKE2b-256 3df45c73eb2a30756603f442198cb609a472e959e8b059d73ad286c3e4d24df8

See more details on using hashes here.

File details

Details for the file firefly_reports-0.2.2-py3-none-any.whl.

File metadata

File hashes

Hashes for firefly_reports-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9edb34e6420ffb403e2eb32d224100a2496651cf2808cf5261f1169e9cf10284
MD5 ed6bc61668804638f9e46f618dae5d19
BLAKE2b-256 a3569437facd02e542bd8197511dd495f7292f5fb7e77c0dda1b8650a84643ca

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page