𝟴/ Lots more in this release including mandatory arkoor ownership attestation, VTXO hex export, wallet deletion API, and configurable daemon sync intervals. Full changelog: second.tech/docs/changelog
Posts by Second
𝟳/ Bark now compiles to wasm32-unknown-unknown—a key step toward browser-based Ark wallets. The server gains a gRPC-web layer so browsers can connect directly without a proxy.
𝟲/ When a user exits an HTLC VTXO on-chain, the server now extracts the preimage from the spending witness and settles the CLN hold invoice automatically. No more stuck invoices.
𝟱/ barkd gets security hardening. Auth tokens now required for all REST API calls, and CORS defaults to deny-all. Configure allowed origins for browser-based clients.
𝟰/ Tor connectivity is here. A new socks5-proxy feature routes traffic through a SOCKS5 proxy, covering Ark gRPC, esplora HTTP, and bitcoind RPC. Local addresses bypass automatically.
𝟯/ New fee estimation API lets you estimate fees for boarding, on-chain sends, offboards, and Lightning—even when the wallet has no funds, returning worst-case estimates upfront.
2/ Bark replaces polling with push-based notifications. Subscribe to a stream of wallet events and react to balance changes in real time. No more polling loops.
𝟭/ Here's a double changelog for Bark 0.1.0-beta9 and 0.1.0 (you know we’re getting closer to mainnet when the “beta” tag is dropped!)...
𝟰/ Tor connectivity is here. A new socks5-proxy feature routes traffic through a SOCKS5 proxy, covering Ark gRPC, esplora HTTP, and bitcoind RPC. Local addresses bypass automatically.
𝟯/ New fee estimation API lets you estimate fees for boarding, on-chain sends, offboards, and Lightning—even when the wallet has no funds, returning worst-case estimates upfront.
2/ Bark replaces polling with push-based notifications. Subscribe to a stream of wallet events and react to balance changes in real time. No more polling loops.
Nice one AJ Towns. Your signet reorg simulations caught a nasty bug lurking in unusually deep reorgs. Thank you for passively torturing our code with edge cases 👍
Cool new project for charging for API calls: community.second.tech/t/arkapi-a-pay-per-call-...
"This was a genuinely fun build. The Bark integration was way smoother than I expected going in. Being able to accept Lightning payments without running my own node, and having native Ark payments work alongside that, made the whole payment layer surprisingly simple to wire up." - PiHiker, ArkAPI
We've integrated Lightning natively across the Bark protocol, wallet, and server. We're as much a Lightning startup as we are an Ark startup.
The new docs also come with an AI assistant and MCP server (table stakes at this point) to make building on Bark with Claude Code/Cursor even easier. And, we now have DARK MODE.
Get started at: second.tech/docs
Our technical docs just got a whole lot better. New platform, getting started guides for Rust, Go, React Native, and more, an API reference, and possibly the most comprehensive explanations on protocol mechanics for any bitcoin layer 2 out there.
5/ Lots more in this update including better wallet error handling, round event replay for late-subscribing mobile wallets, VTXO import for recovery, smarter dust detection during refresh, and exclusive datadir access via PidLock. Full changelog: second.tech/docs/changelog
4/ Boosting wallet security, server pubkey pinning is here. The wallet stores the server's public key on first connection and verifies it every time after. If the pubkey changes unexpectedly, the wallet blocks interaction and advises recovering funds via unilateral exit.
3/ Not so visible but easily our biggest update of the beta.8 release is the Watchman: a new component that unifies coin sweeping and forfeit handling into a single, block-synchronized process. This was a key dependency for us going live and we're glad to finally have it in!
2/ On-chain sends and offboards now use dynamic fees that adjust to current network conditions. The server accepts any feerate valid within a recent historical window, so clients aren't penalized for brief fluctuations between quote and submission.
1/ Changelog time. Beta.8 is out. Bark servers now support fees across all major operations—boards, refreshes, and Ark/Lightning/on-chain payments. And yes that means the Second server now has a fee schedule defined in prep for our mainnet launch.
Christoph Ono's Arké wallet keeps getting better. This is what happens when you unleash a designer armed with agents and the Bark SDK.
Bark makes it ridiculously easy to build bitcoin wallet apps that supports on-chain, Lightning, and Ark payments. All self-custodial.
Bark bindings now ship with every release, published to package managers automatically—pre-built binaries, no cloning repos, no local builds, no Rust toolchain. Just add the dependency the way you already do for everything else.
Luca bringing the fuzz! 🐛
4/ Fuzzer runs 24/7 now, with minimized corpora pushed to our bark-qa repo alongside test vectors used throughout Bark's development. More targets coming—serialization/deserialization expansions, method-level fuzz targets. Full writeup: blog.second.tech/fuzzing-bark-for-server-...
3/ The vec allocation bug is a good example of something easy to miss in review—stable Rust doesn't yet support try_with_capacity, so the bounds check has to be done manually. Our first fuzz target was a straightforward deserialize/serialize pass, and it surfaced the issue immediately.
2/ Bark's client-server architecture means the server has to gracefully handle anything thrown at it—malformed VTXOs, malicious client requests, unexpected edge cases. Fuzzing helps make sure the server stays up and keeps serving rounds no matter what comes in.
1/ We caught a capacity overflow bug in Bark before it ever hit a user, thanks to the fuzz testing @luca0x46 has been running around the clock. A malformed VTXO could have requested an arbitrary vec size during deserialization, triggering a panic. Now it's patched.