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.7.0.tar.gz (224.4 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.7.0-py3-none-any.whl (224.0 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for freemace-0.7.0.tar.gz
Algorithm Hash digest
SHA256 cc7666b50173d23d438492797b8b09298538caa3c00555302faeab928d897253
MD5 bb5650cfbc8af0584f5c4a28ee1b2b99
BLAKE2b-256 21d13dcaa0ac7dd92dfea3c9cb79c2f4e9f0062d4f73ac1fff78c0b5b6eb2dcc

See more details on using hashes here.

Provenance

The following attestation bundles were made for freemace-0.7.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.7.0-py3-none-any.whl.

File metadata

  • Download URL: freemace-0.7.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.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ef9d862b1c36ff0d707616a0955888f448cf1059ad1e03db14c808e53f45341a
MD5 5d7aed17a88397e93d026f2abc9d2900
BLAKE2b-256 6335af76cab89d98d384ebce853eb61dc8112bd6f9f19bf236bcc44c51dba795

See more details on using hashes here.

Provenance

The following attestation bundles were made for freemace-0.7.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