Repository navigation
Releases: BitGarth/bitgarth
Release list
v0.4.3
The bitgarth-web downloads contain the BitGarth web server and its required browser assets and asset catalog. Extract the entire archive and run bitgarth-web (bitgarth-web.exe on Windows) from the extracted directory. The bitgarth-cli downloads contain the companion command-line client for a BitGarth server. See the web server download instructions for runtime requirements and the installation options for other ways to run BitGarth.
Important
Do not double-click the macOS downloads in Finder — run them from
your terminal. These are command-line programs, not app bundles, so
Finder refuses them with "Apple could not verify" and offers no way to
continue. Instead, in your terminal, cd to the extracted directory and
run ./bitgarth (or ./bitgarth-web). macOS shows a one-time
"downloaded from the Internet" prompt: click Open. After that the
binary runs normally from anywhere, including from Finder. Both macOS
downloads are signed and notarized by FernTrail B.V.; Finder refuses
every bare command-line binary regardless of notarization.
BitGarth 0.4.3
Highlights
- Failed Ethereum transactions are now shown and counted correctly. The
amount that was not sent no longer looks transferred, and the network fee
you paid now counts in your balances and hledger exports. - The Holdings Report now shows values for HD wallets again. Their history
coverage no longer stays at Syncing.
New
bitgarth-cli --helpnow explains every command and option.bitgarth-cli loginnow works as another name forbitgarth-cli pair.- The account history page has an All time button to return from a year or
custom range.
Fixed
- Entering a wrong current password under Change Password no longer signs
you out. The form now shows Incorrect password and keeps your session. - The Holdings Report showed Not available for every value of an HD wallet
because its history coverage never finished. It now completes once the
wallet has synced. - An account's history page now opens on all time instead of the current
year, so an account whose activity is all in earlier years no longer looks
empty. - A failed Ethereum transaction now shows its attempted amount struck
through and marked Not transferred, in both the table and card views. - The network fee paid for a failed Ethereum transaction now reduces the
account balance, including historical and report balances. - Failed Ethereum transactions now appear in the account's history at the
time they were mined, instead of alongside pending transactions. The section
heading is now History instead of Confirmed. - hledger exports now include the fee paid for a failed Ethereum transaction.
- An Ethereum transaction that succeeded but contained a failed internal call
no longer shows as failed, and its transfers are kept. - An account that reached its plan limit now shows History paused (plan
limit) instead of Transaction syncing. - Balances of accounts at their plan limit now refresh about every 15 minutes
instead of every 30. - Sync now on an account at its plan limit now refreshes the balance
immediately and reports Balance refreshed. - If you have not chosen a time zone in Settings, BitGarth now saves your
device's time zone when you sign in. Previously, reloading a page could show
times in UTC. - The result of a manual sync now shows the full date and time in your chosen
date format and time zone, not just the hour and minute. - Ethereum transaction hashes now always start with
0xin account history,
hledger exports, and Etherscan links. - A fresh install now opens on account creation, even if your browser still
has a sign-in cookie from an earlier install. - The balance assertions header on account history no longer squeezes its
totals onto one word per line on phones. - Ethereum syncing now spaces its Etherscan requests one second apart for each
API key, so large wallets run into fewer rate-limit errors. - Entering an invalid manual price, such as a negative one, now shows what is
wrong with the price so you can correct it. - The balance assertion dialog now keeps keyboard focus inside it while you
edit, and Escape closes it. - hledger exports no longer fail for a Bitcoin account whose earlier history
is incomplete. They leave out the balance checks that history cannot
support. - hledger exports no longer give two accounts the same name when an account
label matches a name generated for another account. - hledger exports no longer fail when several Bitcoin transactions share a
block, or when their times run backward across a year boundary. - If an hledger export cannot be created, the download now reports an error
instead of delivering a broken file. - Restoring a backup no longer merges manual asset accounts that have
different labels. A restore whose balance assertion conflicts with an
existing one on the same date is now rejected, without changes, instead of
silently dropping it. - Report dates in time zones where daylight saving time starts at midnight
are now handled correctly. - The Holdings Report no longer fails when a change percentage is too large
to show; that percentage now shows as unavailable. - Form guidance text now has enough contrast to read comfortably.
- When BitGarth stops, it now also winds down background syncing and closes
its databases cleanly. Open requests and background work share a limit of
eight seconds.
Notes
- After the upgrade, BitGarth corrects the stored history of past failed
Ethereum transactions automatically. No action is needed. - The Back up your wallets backup does not include saved manual prices.
Note them before restoring, because they must be entered again.
v0.4.2
The bitgarth-web downloads contain the BitGarth web server and its required browser assets and asset catalog. Extract the entire archive and run bitgarth-web (bitgarth-web.exe on Windows) from the extracted directory. The bitgarth-cli downloads contain the companion command-line client for a BitGarth server. See the web server download instructions for runtime requirements and the installation options for other ways to run BitGarth.
Important
Do not double-click the macOS downloads in Finder — run them from
your terminal. These are command-line programs, not app bundles, so
Finder refuses them with "Apple could not verify" and offers no way to
continue. Instead, in your terminal, cd to the extracted directory and
run ./bitgarth (or ./bitgarth-web). macOS shows a one-time
"downloaded from the Internet" prompt: click Open. After that the
binary runs normally from anywhere, including from Finder. Both macOS
downloads are signed and notarized by FernTrail B.V.; Finder refuses
every bare command-line binary regardless of notarization.
BitGarth 0.4.2
Highlights
- The Wallets page and net worth now show the same current balance as the
account page, including for wallets whose transaction history stopped
syncing at the plan limit. - Stopping, restarting, or updating BitGarth in Docker or on Umbrel now
finishes within seconds instead of waiting to be forcibly stopped.
Fixed
- A wallet whose transaction history stopped syncing at the plan limit could
show a wrong balance on the Wallets page, such as 0 ETH, and be left out of
net worth, while its account page showed the correct balance. The Wallets
page now uses the account's latest current balance. - A balance BitGarth has not been able to fetch, such as an Ethereum balance
before an Etherscan API key is added, no longer shows as 0. It now shows as
Not available, and net worth says how many assets it leaves out because
they have no balance or price. - BitGarth now shuts down cleanly when Docker or Umbrel asks it to stop. It
gives open requests up to five seconds to finish, then exits. Previously it
ignored the request until it was forcibly stopped, which on Umbrel could
take a full minute.
v0.4.1
The bitgarth-web downloads contain the BitGarth web server and its required browser assets and asset catalog. Extract the entire archive and run bitgarth-web (bitgarth-web.exe on Windows) from the extracted directory. The bitgarth-cli downloads contain the companion command-line client for a BitGarth server. See the web server download instructions for runtime requirements and the installation options for other ways to run BitGarth.
Important
Do not double-click the macOS downloads in Finder — run them from
your terminal. These are command-line programs, not app bundles, so
Finder refuses them with "Apple could not verify" and offers no way to
continue. Instead, in your terminal, cd to the extracted directory and
run ./bitgarth (or ./bitgarth-web). macOS shows a one-time
"downloaded from the Internet" prompt: click Open. After that the
binary runs normally from anywhere, including from Finder. Both macOS
downloads are signed and notarized by FernTrail B.V.; Finder refuses
every bare command-line binary regardless of notarization.
BitGarth 0.4.1
Highlights
- Bitcoin accounts added from an xpub now fetch the transaction history of
every address BitGarth discovers, and start doing so right after the account
is added. - If BitGarth cannot open its data when it starts, it now stops with an
explanation of what went wrong instead of starting in a broken state.
Fixed
- Transactions on addresses discovered in a Bitcoin account created from an
xpub could be missing, because those addresses were checked for a balance but
their history was never fetched. That history is now fetched. - A newly added xpub account no longer waits for a later scheduled sync before
its discovered transactions appear. - When BitGarth cannot open or upgrade its data at startup, including data
written by an incompatible version, it now exits with a diagnostic describing
the problem and saves it asstartup-error.txtin the project directory. Your
existing data is left untouched. Previously it could start anyway, and signing
up or signing in would then fail. - A temporary problem opening BitGarth's data, such as a file locked by another
program, no longer leaves parts of the app failing until you restart it.
BitGarth tries again the next time the data is needed. - Sign-up and sign-in no longer blame the database for every internal error or
suggest waiting a minute. The message now points to the application logs, or
to the person who runs the instance. - While BitGarth cannot read its data, it no longer logs a warning every
second. It retries every 30 seconds and repeats the warning at most every
five minutes.
Notes
- A new Startup troubleshooting guide, linked from the README, explains where
to find the startup diagnostic on each platform and how to recover safely.
The diagnostic stays on your machine and is not sent to BitGarth's servers. - BitGarth can now be installed with Homebrew on macOS (Apple Silicon) and
Linux (x86-64). Add the tap withbrew tap ferntrail/tap, then run
brew install ferntrail/tap/bitgarth-webfor the web server, or
brew install ferntrail/tap/bitgarth-clifor the command-line client.
v0.4.0
The bitgarth-web downloads contain the BitGarth web server and its required browser assets and asset catalog. Extract the entire archive and run bitgarth-web (bitgarth-web.exe on Windows) from the extracted directory. The bitgarth-cli downloads contain the companion command-line client for a BitGarth server. See the web server download instructions for runtime requirements and the installation options for other ways to run BitGarth.
Important
Do not double-click the macOS downloads in Finder — run them from
your terminal. These are command-line programs, not app bundles, so
Finder refuses them with "Apple could not verify" and offers no way to
continue. Instead, in your terminal, cd to the extracted directory and
run ./bitgarth (or ./bitgarth-web). macOS shows a one-time
"downloaded from the Internet" prompt: click Open. After that the
binary runs normally from anywhere, including from Finder. Both macOS
downloads are signed and notarized by FernTrail B.V.; Finder refuses
every bare command-line binary regardless of notarization.
BitGarth 0.4.0
Highlights
- The free tier now syncs balances for up to 50 supported accounts and includes
transaction history for your first three eligible accounts. - Ready-to-run downloads of the BitGarth web server for Linux, macOS, and
Windows are attached to each release, so you can run BitGarth without Docker
and without building it yourself.
New
- Transaction history is part of the free tier. Until now the free tier tracked
balances only, and syncing any history required an upgrade. - Accounts that support automatic syncing show their mode — Transaction
syncing, Balance only, or Inactive — with a short note explaining
why, so a current balance is never presented as if its history were complete. - Each transaction-syncing account has a sync threshold, 1,000 transactions on
the free tier. Once an account reaches it, the batch already in progress
finishes, so the stored count can end up somewhat above the threshold.
Transaction syncing then pauses and balances keep updating on their own. - Accounts with existing sync priority keep their place. New accounts join in
the order you add them. Deleting an account frees its place for the next one;
reaching a threshold or a temporary provider outage does not. - Each release now carries web server downloads for Linux (x86-64), macOS
(Apple Silicon), and Windows (x86-64), alongside the command-line client.
Each archive holds thebitgarth-webserver, the web assets, and the asset
catalog it needs at startup. The README has the platform requirements. - Installs that previously showed no update notice — desktop builds, and
anything packaged outside Docker and Umbrel — now see one when a newer
version is published, with links to the installation instructions and to the
release. Docker and Umbrel keep the upgrade guidance written for them, and
hosted accounts still see nothing, because updates are not yours to run there. - Harvest tracks balances and transactions for up to 200 supported accounts
and raises the transaction sync threshold to 3,000 per account. The
Upgrade page shows the current offer, as does
https://bitgarth.app/#pricing
Fixed
- A Bitcoin account whose history had been verified only up to an older block
could still be labelled "Complete" after newer blocks arrived. The account now
shows the block its history was verified through, and where no boundary can be
proven, BitGarth says the coverage boundary is unknown rather than claiming
complete history. - Reports and balances for a Bitcoin account are now marked provisional when
they depend on blocks beyond the point its history was verified to, instead of
being presented as settled. - Ethereum balance checks no longer count as completed transaction history.
When transaction syncing becomes available, BitGarth can fetch transactions
missed while only balances were updating. - Balance assertions in accounting journals readable by hledger and ledger-cli
now use the time the balance was observed, rather than when the sync run
finished. - An account with more than one address, such as a Bitcoin account created from
an xpub, could export a balance assertion that added up balances observed at
different moments. Those assertions are now left out rather than exported as
something you could check.
Notes
- Requests to BitGarth's servers now also state the operating system and
processor architecture the app was built for, alongside the app version and
install channel they already carried. That describes the binary making the
request, not the device you browse from. The privacy notice, updated
19 September 2026, covers what these requests contain and how it is used. - Existing accounts and their data remain in place. On the free tier, up to 50
supported accounts sync balances, and the first three eligible among them
sync transactions. Additional accounts remain viewable and exportable even
when inactive. - Restoring a wallet data backup now preserves account priority for balance and
transaction syncing. Backups from earlier versions still import.
v0.3.2
These release notes describe the BitGarth application. See the installation options or build the app from source. The platform-specific downloads below contain the BitGarth CLI, a companion command-line client for a BitGarth server.
BitGarth 0.3.2
Highlights
- macOS CLI downloads now carry a developer signature and are submitted to
Apple for notarization. You should no longer see an unidentified-developer
warning when running the released CLI binary on macOS.
Fixed
- The CLI now reports the same version as the BitGarth app, instead of always
reporting 0.1.0.
Notes
- GitHub download filenames now start with
bitgarth-cli-to distinguish the
command-line client from the app. Update download scripts that use the old
bitgarth-filenames; the executable is still namedbitgarth. - This release improves CLI distribution. App features and wallet data are
unchanged.
v0.3.1
BitGarth 0.3.1
Highlights
- Bitcoin transaction history now finishes downloading when BitGarth reads from
your own mempool server, such as the one running on Umbrel.
Fixed
- With Settings → Bitcoin Explorer → Mempool Base URL pointed at your own
mempool server, an account could download the same last page of transactions
again and again and never finish its history. BitGarth now recognises that
ending and completes the history once every transaction is accounted for. - Closed a weakness in a networking library BitGarth uses, where a client could
drive up memory use on your install by sending a stream of empty requests.
v0.3.0
BitGarth 0.3.0
Highlights
- BitGarth's source code is now published. Every release is built from a public
commit you can read, audit, and build yourself. - A new
bitgarthcommand-line client reads your wallet balances from a
terminal. You pair it once in your browser. In this release it shows
balances; later releases will give it more to do. - A Bitcoin account that reached its per-account transaction limit no longer
shows "Syncing" forever.
New
- The
bitgarthcommand-line client prints a balance sheet of your wallets. Run
bitgarth pair, open the approval link it prints, approve it in BitGarth, then
runbitgarth balancesheet(short:bs). - Ready-to-run downloads of the CLI for Linux, macOS on Apple Silicon, and
Windows are attached to each release, with checksums. You can also build it
from source. - The CLI keeps a profile per BitGarth you connect to, so one machine can
reach several installs. Manage them withbitgarth profile list,
bitgarth profile rename, andbitgarth profile remove. - Settings → Paired Clients lists everything you have paired, with when it
was created, when it expires, and when it was last used. Revoking one cuts off
its access immediately, without affecting your password or your other paired
clients. - The CLI requires HTTPS by default, and will not send its credentials over
plain HTTP unless you allow that explicitly.
Fixed
- A Bitcoin account that hit its per-account transaction limit stayed marked
"Syncing" indefinitely and kept re-running sync in the background. It now
settles once the permitted history has downloaded, and the history still
waiting is picked up later if that limit is raised. - Refreshing your wallets or checking for a new version could break the page
until you reloaded it.
Notes
- BitGarth is published under the Functional Source License 1.1
(FSL-1.1-ALv2). Each release additionally becomes available under the Apache
License 2.0 on its second anniversary. - BitGarth's internal web addresses moved from
/api/v1/to/_app/, and its
health check is now/health. If you self-host behind a reverse proxy that
filters or rewrites paths, allow/_app/and/health. Hosted, Umbrel, and
plain Docker installs need no change.