Skip to main content

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

Release files for firefly_reports 0.5.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for firefly_reports 0.5.1
File Size Uploaded
firefly_reports-0.5.1.tar.gz 42.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for firefly_reports 0.5.1
File Interpreter ABI Platform
firefly_reports-0.5.1-py3-none-any.whl Python 3 none any Details

Total release size: 50.1 kB

Release files / firefly_reports-0.5.1.tar.gz

Download URL firefly_reports-0.5.1.tar.gz
Size 42.8 kB
Tags Source
SHA-256 checksum
How to use checksums
19418a83e389343eb08d982421fafdd65b39b5786584776661d44bd0bb324d47
BLAKE2b-256 checksum
How to use checksums
38a8ef1b6f5aa1b5a95f88789998a1ceb1ce76ef9f87bed415b57ac6784d580d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / firefly_reports-0.5.1-py3-none-any.whl

Download URL firefly_reports-0.5.1-py3-none-any.whl
Size 7.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ab8eb8a3f41f60b349071fa7bf496df2693d09bb07c76950bbacac6e1f001abd
BLAKE2b-256 checksum
How to use checksums
f29f0dc31e55212c6b1cd44d19da3f8ae8ecac9dc5d53fb75a903fd2d04f7adb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

0.5.1 This release

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page