Practical overview
When it fits
Use it when developing a Java application and you need to choose from its Bitcoin-related starter modules, or when evaluating modules for Bitcoin and Lightning integrations and testing.
Who it is for
- Java developers building Bitcoin-related applications with Spring Boot.
- Teams that want modules for Bitcoin Core or selected Lightning connections.
- Developers adding Bitcoin regtest-based integration or regression testing to their projects.
Documented uses
- Declare a Bitcoin Core JSON-RPC or ZeroMQ client module in an application.
- Connect an application to Core Lightning or LND through the listed gRPC modules.
- Run application integration or regression tests using the Bitcoin regtest module.
- Include exchange-rate data or a documented Spring integration such as LNURL-auth.
Requirements & limits
The README says to download modules from Maven Central and provides Gradle and Maven dependency examples. The project is released under the Apache-2.0 license.
- Choose a module according to the required connection or task; the project documents separate modules for Bitcoin Core JSON-RPC, Bitcoin Core ZeroMQ, Core Lightning gRPC, LND gRPC and regtest testing.
- Some dependencies require repositories beyond Maven Central, including JitPack or a GitLab Maven repository.
- Repository development requirements list Java 21 or later and Docker; most examples start a Bitcoin Core regtest test container.
- A Bitcoin Core mainnet node is described as useful for trying everything, and some features require rawtx and rawblock messages published over ZeroMQ.
- The README warns that most code is experimental.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Add the JSON-RPC client starter dependency
Declare the project's bitcoin-jsonrpc-client-starter module in a Gradle or Maven application.
Before you start
- A Gradle or Maven project.
- Maven Central configured as a dependency repository.
- A project-defined bitcoinSpringBootStarterVersion value for the Gradle example, or bitcoinSpringBootStarter.version for Maven.
Steps
For Gradle, add mavenCentral() to the repositories block.
Add io.github.theborakompanioni:bitcoin-jsonrpc-client-starter with the project's version variable as an implementation dependency.
For Maven instead, declare io.github.theborakompanioni as the groupId, bitcoin-jsonrpc-client-starter as the artifactId, and the project version variable as the version.
Expected outcome
The application build declares the JSON-RPC client starter dependency.
Guide limitations
- The README notes that additional repositories are needed for certain packages: JitPack for netlayer packages and a GitLab Maven repository for consensusj.
- This guide covers dependency declaration only; it does not configure a Bitcoin Core node or demonstrate application execution.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 13 October 2026
- Original website title
- theborakompanioni/bitcoin-spring-boot-starter · Official homepage title · retained in its source language

