個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗1. Try it without installing anything. The live demo runs the real app in your browser with a sample budget. Nothing leaves your browser, and closing the tab wipes it.
2. Install the desktop app.
| Platform | Download | Requires |
|---|---|---|
| Windows | Installer (.exe) | Windows 10 or 11, 64-bit |
| macOS | Apple silicon (.dmg) · Intel (.dmg) | macOS 12 Monterey or later |
| Linux | .deb · .AppImage · ARM | 64-bit, x86 or ARM |
The installers aren't signed with a paid Windows or Apple certificate yet, so your computer may ask you to confirm the first time you open FlyBudget. The installing guide shows what to click, and every download can be verified against the build that made it.
3. Follow the checklist. A new budget opens on a short setup, and the dashboard's Getting started checklist walks you through adding accounts, importing transactions and planning your first month. The user guide covers every feature.
Run FlyBudget on your own server, protected by a password, and open it from any browser, including your phone:
curl -O https://raw.githubusercontent.com/dtymoszenko/FlyBudget/main/docker-compose.yml
openssl rand -base64 32 > flybudget_data_key.txt # encryption key for bank credentials
sudo chown 1000:1000 flybudget_data_key.txt && sudo chmod 400 flybudget_data_key.txt
docker compose up -d
docker logs flybudget # prints the one-time setup code
Open http://<your-server>:3001, enter the setup code and choose your password. Images are
published for amd64 and arm64 as ghcr.io/dtymoszenko/flybudget. The
self-hosting guide covers HTTPS, backups and
updates.
A budgeting app holds some of the most personal data you have, so FlyBudget treats security as a feature, not an afterthought:
✅ Local-first. No FlyBudget servers, accounts, telemetry or crash reports. Your data only leaves your machine when bank sync talks to Plaid or SimpleFIN for you.
✅ Encrypted bank credentials. Plaid and SimpleFIN secrets are stored with AES-256-GCM, under a key protected by your operating system (Windows DPAPI, macOS Keychain, Linux secret service). A copied database gives no bank access.
✅ A locked-down app. The built-in API answers only the app's own window, with a new secret every launch; other websites and programs are turned away. The window is sandboxed under a strict Content Security Policy.
✅ A hardened server. Self-hosted installs use a scrypt-hashed password, a one-time setup code, rate-limited sign-in, signed-in device management and a read-only, unprivileged container.
✅ Verifiable releases. Every download and Docker image comes with signed build provenance from GitHub Actions. Check that a file was built from this repository:
gh attestation verify FlyBudget-Windows-Setup.exe -R dtymoszenko/FlyBudget
✅ A careful supply chain. Dependency install scripts never run, npm registry signatures are checked in CI, and new dependency versions wait a week before they're proposed.
Read the full model in SECURITY.md or on the security page. Found a problem? Please report it privately.
You'll need Node.js and npm.
git clone https://github.com/dtymoszenko/FlyBudget.git
cd FlyBudget
npm ci && npm ci --prefix client && npm ci --prefix server
npm run dev # opens on http://localhost:5173
npm run electron:dev # or run it as the desktop app
Built with React 19, Vite, Tailwind CSS, TanStack Query, Express 5, SQLite (Drizzle ORM) and Electron. See CONTRIBUTING.md for the checks to run before a pull request.
Ideas we're considering (not promises):
Have an idea? Open an issue.
Contributions are welcome, from bug reports to pull requests. See CONTRIBUTING.md for setup, the checks to run and commit conventions. Before your first pull request is merged, you'll be asked to accept the Contributor License Agreement with a one-line comment.
FlyBudget is free software under the GNU Affero General Public License v3.0 (AGPL-3.0-only). You can use, study, share and modify it. Using it yourself, changed or not, asks nothing of you. If you give copies to others, their source code must be available to them under the same license. If you let other people use a modified version over a network, it must offer those users your version's source code, free of charge (the "Source code" link in Settings does this once it points at your code). You don't have to publish it to everyone, only offer it to the people who use it.