# Project pack: Wealthfolio @ 1e08bbc Facts about **Wealthfolio** for an AI following the [BespokeAI handover guide](https://handoff.bespokeai.software/guide/v4.md). Pinned to one version; never changes after publication. > Wealthfolio shows what all your savings, pensions and investments are worth, in one place. Add your accounts, type in or import your trades from a CSV file, and it works out your net worth, returns, dividends and progress towards goals such as a house deposit or retirement. It can also track spending. Your figures stay on your own computer or server, not with a finance company. ## Setup path (checked 2026-11-03) - **Start here, no Docker:** Install the project's own desktop app or installer. No Docker. - Offer Docker only if the person asks or this path fails. The commands further down may use Docker; they are not the starting point. - Verdict source: https://wealthfolio.app - You may be unable to download source archives or run commands in this session. The person downloads and runs things; if you cannot fetch something, give any changed file in full in chat with its path. ## Version and source - Repository: https://github.com/afadil/wealthfolio - Pinned commit: `1e08bbc1e2ae88cb245130d315df4283b1fe256d`. Use exactly this version. - Zip the person can download in a browser: https://github.com/afadil/wealthfolio/archive/1e08bbc1e2ae88cb245130d315df4283b1fe256d.zip - Fresh checkout (only if you have a shell and git): use the commands below in an empty folder. If this exact source is already checked out, keep your branch and use the development command; do not clone again or reset local changes. - Official docs: https://wealthfolio.app/docs/guide/self-hosting/docker - Licence: **AGPL-3.0-only**. Free to use and change. If you run a changed version that other people use over the internet (not just you or your household), you must offer them your source code under the same licence. Private use has no extra obligations. The name and logo are trademarks of Teymz Inc. and are not covered by the licence, so a public copy should use its own name. The add-on SDK is MIT. ## Commands from the pinned source - Developer commands (they may use Docker): ```sh git clone https://github.com/afadil/wealthfolio bespoke-wealthfolio cd bespoke-wealthfolio git checkout --detach 1e08bbc1e2ae88cb245130d315df4283b1fe256d # Prepare development requirements and local configuration first. # Setup notes: web UI on :1420, API on :8088; or pnpm tauri dev for the desktop app pnpm install --frozen-lockfile && cp .env.web.example .env.web && pnpm dev:web ``` - Separate trial of the current upstream release (not your changes; sample data and a separate data directory only): ```sh # Easiest: download the desktop app for Mac, Windows or Linux from https://wealthfolio.app/download # Or run the web version in Docker, on this computer only: echo "WF_SECRET_KEY=$(openssl rand -base64 32)" > wealthfolio.env docker run -d --name wealthfolio --env-file wealthfolio.env -e WF_LISTEN_ADDR=0.0.0.0:8088 -e WF_DB_PATH=/data/wealthfolio.db -e WF_AUTH_REQUIRED=false -p 127.0.0.1:8088:8088 -v wealthfolio-data:/data wealthfolio/wealthfolio:latest # Then open http://localhost:8088. Keep wealthfolio.env safe. # To reach it from other devices, set a password (WF_AUTH_PASSWORD_HASH) first, as the README describes. ``` - Tools these commands use: The desktop app (macOS 12+, Windows or Linux), or Docker for the web version, For development, Node 24 (.node-version), pnpm, Rust 1.98 (rust-toolchain.toml) and the Tauri prerequisites - Develop: `pnpm install --frozen-lockfile && cp .env.web.example .env.web && pnpm dev:web # web UI on :1420, API on :8088; or pnpm tauri dev for the desktop app` - Test: `pnpm --filter frontend exec vitest run && cargo test --locked -p ` - Check/lint: `pnpm check && cargo fmt --all -- --check && cargo clippy --locked -p --all-targets --all-features -- -D warnings` - Build: `pnpm build # web front end; docker build -t wealthfolio . for the full server image` - Stack: rust, typescript, react (Tauri 2, Axum, Diesel, React, React Router, Tailwind CSS, shadcn/Base UI, Recharts, Vite). Difficulty for a non-developer with an AI: **advanced**. Theme, font, language, currency, AI provider and market-data sources are settings, and the add-on SDK lets you add whole new pages without touching the app. Code changes are harder: the React front end talks to two Rust back ends (the Tauri desktop app and the Axum web server), and every new call must be wired into both. Financial maths lives in Rust crates with strict tests. - The project's own AI instructions, in the repository: `AGENTS.md`, `CONTRIBUTING.md`. Personal data: **yes**. Stored in: One SQLite database on your device (desktop app data folder) or in the wealthfolio-data volume (/data) in Docker, plus an encrypted secrets file. Saved snapshots go in a backups/ folder beside the database. Secrets are entered by the person, never in chat. --- Later, only when a step needs it: [reference.md](https://handoff.bespokeai.software/p/wealthfolio/1e08bbc/r3/reference.md) (customisation points, must-keep-working, data and costs, coding conventions) · [hosting.md](https://handoff.bespokeai.software/p/wealthfolio/1e08bbc/r3/hosting.md) (long-term hosting; hosts are paid third parties) · [bespoke.yaml](https://handoff.bespokeai.software/p/wealthfolio/1e08bbc/r3/bespoke.yaml) · [SKILL.md](https://handoff.bespokeai.software/p/wealthfolio/1e08bbc/r3/SKILL.md)