Skip to main content

Add your description here

Project description

WealthOS

WealthOS is a modern, privacy‑first portfolio tracker with a fast CLI, a clean web UI (Next.js), and extensible data sources. It focuses on crypto first and stays flexible for other assets.

Highlights

  • Clean dashboard with KPIs, allocation, P&L over time, top holdings, and recent activity
  • Multi‑account filtering, dark mode, centered responsive layout
  • Powerful transactions tables (edit in dialog, batch delete, sort/filter, column visibility)
  • Robust API (FastAPI) and CLI (Typer) for full control and automation
  • CSV import/export, charts, and PDF reports

Install

  • Python 3.11+ required
  • Optional for UI: Node.js 18+ (only needed to build/run the Next.js UI)

From PyPI (recommended):

  • pip install wealth-os
  • Or with pipx: pipx install wealth-os (great for a standalone CLI)

From source (developers):

  • uv sync to install local deps into the virtualenv

Quick Start

  1. Configure environment
  • Copy .env.example to .env
  • Set COINMARKETCAP_API_KEY=... and/or COINDESK_API_KEY=... for price data (optional)
  • Optionals: WEALTH_DB_PATH=wealth.db, WEALTH_BASE_CURRENCY=USD
  1. Initialize the DB
  • wealth init
  • Seed demo data (optional): wealth seed
  1. Run API + UI
  • Production UI: wealth ui
    • Force rebuild if needed: wealth ui --build
    • Custom ports: wealth ui --ui-port 4000 --api-port 8002
  • Dev UI: wealth ui --dev

CLI Essentials

  • Help: wealth --help
  • Accounts: wealth account add|list|update|remove
  • Transactions: wealth tx add|list|update|remove
  • Prices: wealth price quote|sync
  • Portfolio: wealth portfolio summary|chart
  • CSV: wealth import csv ... / wealth export csv ...
  • Reports: wealth report generate

Web UI Overview

  • Dashboard: KPIs, Portfolio Allocation, Realized P&L, Top Holdings by Value, Recent Activity
  • Accounts: Grid of accounts; click to open an account view
  • Account View: KPIs scoped to that account, allocation, P&L, volume, and a full transactions table
  • Transactions: Full DataTable with edit, delete, batch operations, filtering, column visibility

Design

  • Centered content on large screens; clean spacing; dark mode toggle in the sidebar
  • Accessible controls and meaningful labels (e.g., “Trade Volume (Buy vs Sell)”, “Recent Activity”)

Development

  • Run tests: uv run pytest -q
  • Lint/typecheck (suggested): ruff/mypy/eslint if you use them locally

Publish to PyPI

Maintainers: steps to cut a release.

  • Bump version in pyproject.toml and update changelog if applicable
  • Build artifacts:
    • python -m pip install --upgrade build twine
    • python -m build # creates dist/*.tar.gz and dist/*.whl
    • twine check dist/*
  • Optional: TestPyPI smoke test
    • twine upload -r testpypi dist/*
    • pip install -i https://test.pypi.org/simple wealth-os
  • Publish to PyPI
    • twine upload dist/*

After install, the CLI entry point is wealth (or run python -m wealth_os).

Licensing & Contributing

  • License: MIT (see LICENSE)
  • Contributions welcome — read CONTRIBUTING.md for guidelines

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

wealth_os-0.1.1.tar.gz (240.5 kB view details)

Uploaded Source

Built Distribution

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

wealth_os-0.1.1-py3-none-any.whl (187.0 kB view details)

Uploaded Python 3

File details

Details for the file wealth_os-0.1.1.tar.gz.

File metadata

  • Download URL: wealth_os-0.1.1.tar.gz
  • Upload date:
  • Size: 240.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for wealth_os-0.1.1.tar.gz
Algorithm Hash digest
SHA256 973a71eb252d9464691a37ec64142ccaddc69a035077887d22e1ed37d80a2208
MD5 90423475aa04758b4fd3bd9996ec8758
BLAKE2b-256 b69d6245e05ea2697b11eb7f5a05b6e221b6437322b028938fa8cdf64238248c

See more details on using hashes here.

Provenance

The following attestation bundles were made for wealth_os-0.1.1.tar.gz:

Publisher: publish.yml on dowhiledev/wealth

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

File details

Details for the file wealth_os-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: wealth_os-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 187.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for wealth_os-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 65180fd0c15e3b1208d74c2d1230b93a7b6e0ef495dd3f446193a49282406d65
MD5 7352f5d88d68032a4bb604c7cd52fb9e
BLAKE2b-256 24f9307dc07d3679bb7ae65a9647d725cc6a715ca383dd035e840c783ba00018

See more details on using hashes here.

Provenance

The following attestation bundles were made for wealth_os-0.1.1-py3-none-any.whl:

Publisher: publish.yml on dowhiledev/wealth

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