Skip to main content

The all-encompassing finance manager on the command line.

Project description

Sukuma

Python support PyPI Release Repository Releases Licence Expand your project structure from atoms of code to galactic dimensions.

Project type Project stage Contributions Welcome Open issues Merge Requests

BDD Code style: Ruff Docstrings Gitmoji Semantic Line Breaks

Poetry Pre-commit Bandit isort Editorconfig

Intended Effort Versioning

Pipelines

The all-encompassing finance manager on the command line


POWERED BY

Powered by Typer Powered by Textual Powered by Orbittings

:sunrise_over_mountains: Purpose & Function

Sukuma is a personal finances application built with Python and tailored to users who want more than just another budgeting app.

Sukuma was born out of a desire to deliver features we deem crucial for a personal finance app that no high-profile open source project provides in a single package:

  • Batteries-included double-entry accounting;
  • Both cash and investments tracking;
  • CLI and TUI-based interaction.

:inbox_tray: Installation

Use pipx to install Sukuma in an isolated environment:

pipx install sukuma

Then you can run it from the command line:

sukuma --help

:black_joker: How to Use It

The top-level command is the entry point for additional operations:

sukuma [--version | -v]

--version

-v

Print the current version of the program and exit.

Launch the Interface

Launch the terminal interface with the sukuma launch command:

sukuma launch [(--config | -c) <file>]

--config

-c

Specify a custom configuration file to launch the application.

Manage the Configuration

The sukuma config command provides additional subcommands to manipulate the settings for your Sukuma installation:

sukuma config get [--path <file>] [--secret | -s] KEY

KEY

The configuration key to be retrieved. [required]

--path

Specify a custom configuration file.

--secret

-s

Retrieve configuration from the secret manager instead.

sukuma config set [--path <file>] [--secret | -s] KEY VALUE

KEY

The configuration key to be retrieved. [required]

VALUE

The value to be stored with the key. [required]

--path

Specify a custom configuration file.

--secret

-s

Store configuration in the secret manager instead.

sukuma config extend [--path <file>] [--secret | -s] [--create-on-missing | -c] KEY VALUE

KEY

The configuration key to be extended. [required]

VALUE

The value to be appended to the key. [required]

--path

Specify a custom configuration file.

--secret

-s

Store configuration in the secret manager instead.

--create-on-missing

-c

Add the provided value in an array if the setting is not set. Will raise an error otherwise.

sukuma config unset [--path <file>] [--secret | -s] KEY

KEY

The configuration key to be removed. [required]

--path

Specify a custom configuration file.

--secret

-s

Retrieve configuration from the secret manager instead.

:reminder_ribbon: Contributing

There are several ways to contribute to Sukuma. Refer to our CONTRIBUTING guide for all relevant details.

Currently, we are seeking help to tackle areas of focus that are more pressing to our project's progress and would make an immediate difference in helping us achieve our mission.

Here are some key contributions your can help us with right now:

:ship: Releases

You can see the list of available releases on the GitLab Releases page.

We follow Intended Effort Versioning specification, details can be found in our CONTRIBUTING guide.

:shield: Licence

Licence

This project is licenced under the terms of the GNU Affero General Public License v3.0 or later. See LICENCE for more details.

:page_with_curl: Citation

We provide a CITATION.cff file to make it easier to cite this project in your paper.

:women_with_bunny_ears: Similar Projects

There are only a few projects which also tackle personal finances. :face_with_hand_over_mouth:

However, there are some that might be worth checking out:

  • GnuCash is arguably the most classic open source personal finance manager;
  • KMyMoney is a cross-platform personal finance manager built on KDE;
  • Firefly III is one of the most popular self-hosted budgeting app out there;
  • Bagels is a TUI expense tracker, also built with Textual!

Additionally, the Ledger accounting system is a classical accounting system truthful to the UNIX philosophy, if you wish to implement a fully tailored workflow to better suit your needs.

Credits Expand your project structure from atoms of code to galactic dimensions.

This project was generated with Galactipy.

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

sukuma-0.1.0a0.tar.gz (34.3 kB view details)

Uploaded Source

Built Distribution

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

sukuma-0.1.0a0-py3-none-any.whl (47.3 kB view details)

Uploaded Python 3

File details

Details for the file sukuma-0.1.0a0.tar.gz.

File metadata

  • Download URL: sukuma-0.1.0a0.tar.gz
  • Upload date:
  • Size: 34.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.13.7 Linux/6.17.7-arch1-1

File hashes

Hashes for sukuma-0.1.0a0.tar.gz
Algorithm Hash digest
SHA256 449a15269dd20e2d9a8b074ee5161db804f431e1710a335305f55dffad91f3ea
MD5 53a5fb8547ff3041b7e8530da061bbe1
BLAKE2b-256 40ba7daa0a720339001873a46305659d1644d1888daa488b980f500e6a408d15

See more details on using hashes here.

File details

Details for the file sukuma-0.1.0a0-py3-none-any.whl.

File metadata

  • Download URL: sukuma-0.1.0a0-py3-none-any.whl
  • Upload date:
  • Size: 47.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.13.7 Linux/6.17.7-arch1-1

File hashes

Hashes for sukuma-0.1.0a0-py3-none-any.whl
Algorithm Hash digest
SHA256 b8470ed87a37a5f09c7412d11dbebb24b916ee8b27153e0b59a6056d83414bb4
MD5 7c29b13416d50dcbc858ae78799ee656
BLAKE2b-256 7afad7f642eba9c7b4de2355589ff1dc88a27662a7d2af80804100998c043066

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