Skip to main content

Freelance budgeting app

Project description

Current PyPi Version Supported Python Versions codecov docs tests style

A self-hosted freelance budgeting app with a React UI, FastAPI backend, automatic git backup to GitHub, and over-the-air updates from PyPI.

Quick Install

One-liner that sets up everything (venv, service, auto-start):

curl -sSL https://raw.githubusercontent.com/Delaunay/freemace/master/install.sh | bash

This will:

  • Create /opt/freemace/ with a Python venv and data directory

  • Install uv if not already available

  • Install the latest freemace package from PyPI

  • Start a systemd user service on port 5002

After installation, open http://localhost:5002 in your browser.

Manual Install

pip install freemace

Then run the server:

freemace serve --port 5002

Configuration

After installing, you can configure git backup and auto-updates from the Settings page in the web UI, or via the CLI:

# Set up automatic git backup to GitHub
freemace setup-git git@github.com:username/freemace-data.git

# Check for and install updates
freemace update --restart

# View or change configuration
freemace config
freemace config auto_update true

Useful Commands

sudo systemctl status freemace      # check service status
sudo systemctl restart freemace     # restart
sudo journalctl -u freemace -f      # view logs

Features

  • Budget spreadsheet with income/expense tracking, categories, and pivot summaries

  • CSV import/export

  • Dark/light theme

  • Automatic git backup to GitHub on every save

  • SSH key generation and guided GitHub setup from the UI

  • Auto-update from PyPI with service restart

  • One-command installation with systemd service

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

freemace-0.8.0.tar.gz (224.5 kB view details)

Uploaded Source

Built Distribution

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

freemace-0.8.0-py3-none-any.whl (224.0 kB view details)

Uploaded Python 3

File details

Details for the file freemace-0.8.0.tar.gz.

File metadata

  • Download URL: freemace-0.8.0.tar.gz
  • Upload date:
  • Size: 224.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for freemace-0.8.0.tar.gz
Algorithm Hash digest
SHA256 ae9b73a0d6ed41694e22cc91d0cf25873056c005a7393b93efcdd03feac78d58
MD5 869e2e9bf7a779db97f2ef5c1302e367
BLAKE2b-256 5f0d9d724a5468423c33bfea95451b21a95fce1c1b13b78ecf6e3acfdf0c1c8e

See more details on using hashes here.

Provenance

The following attestation bundles were made for freemace-0.8.0.tar.gz:

Publisher: publish.yml on Delaunay/freemace

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file freemace-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: freemace-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 224.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for freemace-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4bb9d5d16e632f6a72c30a37273eb7cde2a8a6ae2412246872650e142117fe65
MD5 9d6f02257725d7ed9b25ea53b26873a5
BLAKE2b-256 fb49377aefc6a80c8f1ab6698f4343a167d43ace73ad60ed0840fdc74d3945d8

See more details on using hashes here.

Provenance

The following attestation bundles were made for freemace-0.8.0-py3-none-any.whl:

Publisher: publish.yml on Delaunay/freemace

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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