Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/demining/bitcoinj-google-colab
A library for working with Bitcoin Google Colab
https://github.com/demining/bitcoinj-google-colab
bitcoin bitcoin-api bitcoin-core bitcoin-payment bitcoin-transaction bitcoin-wallet colab colab-notebook colab-notebooks colab-tutorial colaboratory google-colab google-colab-notebook google-colab-notebooks google-colab-tutorial google-colaboratory
Last synced: 4 days ago
JSON representation
A library for working with Bitcoin Google Colab
- Host: GitHub
- URL: https://github.com/demining/bitcoinj-google-colab
- Owner: demining
- License: apache-2.0
- Created: 2022-02-17T20:14:50.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2022-07-02T01:16:07.000Z (over 2 years ago)
- Last Synced: 2024-11-15T04:08:10.417Z (4 days ago)
- Topics: bitcoin, bitcoin-api, bitcoin-core, bitcoin-payment, bitcoin-transaction, bitcoin-wallet, colab, colab-notebook, colab-notebooks, colab-tutorial, colaboratory, google-colab, google-colab-notebook, google-colab-notebooks, google-colab-tutorial, google-colaboratory
- Language: Java
- Homepage:
- Size: 18.9 MB
- Stars: 1
- Watchers: 2
- Forks: 10
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: .github/CONTRIBUTING.md
- License: COPYING
- Authors: AUTHORS
Awesome Lists containing this project
README
[![Github Build Status](https://github.com/bitcoinj/bitcoinj/workflows/Java%20CI/badge.svg)](https://github.com/bitcoinj/bitcoinj/actions)
[![GitLab Build Status](https://gitlab.com/bitcoinj/bitcoinj/badges/master/pipeline.svg)](https://gitlab.com/bitcoinj/bitcoinj/pipelines)
[![Coverage Status](https://coveralls.io/repos/bitcoinj/bitcoinj/badge.png?branch=master)](https://coveralls.io/r/bitcoinj/bitcoinj?branch=master)[![Visit our IRC channel](https://kiwiirc.com/buttons/irc.freenode.net/bitcoinj.png)](https://kiwiirc.com/client/irc.freenode.net/bitcoinj)
-------------------------
### Run bitcoinj-Google-Colabhttps://colab.research.google.com/drive/1OShIMVcFZ_khsUIBOIV1lzrqAGo1gfm_?usp=sharing
-------------------------
The bitcoinj library is a Java implementation of the Bitcoin protocol, which allows it to maintain a wallet and send/receive transactions without needing a local copy of Bitcoin Core. It comes with full documentation and some example apps showing how to use it.
### Technologies
* Java 8+ (needs Java 8 API or Android 7.0 API, compiles to Java 8 bytecode) and Gradle 4.4+ for the `core` module
* Java 11+ and Gradle 4.4+ for `tools`, `wallettool` and `examples`
* Java 11+ and Gradle 4.10+ for the JavaFX-based `wallettemplate`
* [Gradle](https://gradle.org/) - for building the project
* [Google Protocol Buffers](https://github.com/google/protobuf) - for use with serialization and hardware communications### Getting started
To get started, it is best to have the latest JDK and Gradle installed. The HEAD of the `master` branch contains the latest development code and various production releases are provided on feature branches.
#### Building from the command line
Official builds are currently using JDK 11. Our GitHub Actions build and test with JDK 11 and JDK 17.
To perform a full build (*including* JavaDocs and unit/integration *tests*) use JDK 11+.
```
gradle clean build
```
If you are using Gradle 4.10 or later, the build will automatically include the JavaFX-based `wallettemplate` module. The outputs are under the `build` directory.To perform a full build *without* unit/integration *tests* use:
```
gradle clean assemble
```#### Building from an IDE
Alternatively, just import the project using your IDE. [IntelliJ](http://www.jetbrains.com/idea/download/) has Gradle integration built-in and has a free Community Edition. Simply use `File | New | Project from Existing Sources` and locate the `build.gradle` in the root of the cloned project source tree.
### Building and Using the Wallet Tool
The **bitcoinj** `wallettool` subproject includes a command-line Wallet Tool (`wallet-tool`) that can be used to create and manage **bitcoinj**-based wallets (both the HD keychain and SPV blockchain state.) Using `wallet-tool` on Bitcoin's test net is a great way to learn about Bitcoin and **bitcoinj**.
To build an executable shell script that runs the command-line Wallet Tool, use:
```
gradle bitcoinj-wallettool:installDist
```You can now run the `wallet-tool` without parameters to get help on its operation:
```
./wallettool/build/install/wallet-tool/bin/wallet-tool
```To create a test net wallet file in `~/bitcoinj/bitcoinj-test.wallet`, you would use:
```
mkdir ~/bitcoinj
```
```
./wallettool/build/install/wallet-tool/bin/wallet-tool --net=TEST --wallet=$HOME/bitcoinj/bitcoinj-test.wallet create
```To sync the newly created wallet in `~/bitcoinj/bitcoinj-test.wallet` with the test net, you would use:
```
./wallettool/build/install/wallet-tool/bin/wallet-tool --net=TEST --wallet=$HOME/bitcoinj/bitcoinj-test.wallet sync
```To dump the state of the wallet in `~/bitcoinj/bitcoinj-test.wallet` with the test net, you would use:
```
./wallettool/build/install/wallet-tool/bin/wallet-tool --net=TEST --wallet=$HOME/bitcoinj/bitcoinj-test.wallet dump
```Note: These instructions are for macOS/Linux, for Windows use the `wallettool/build/install/wallet-tool/bin/wallet-tool.bat` batch file with the equivalent Windows command-line commands and options.
### Example applications
These are found in the `examples` module.
### Where next?
Now you are ready to [follow the tutorial](https://bitcoinj.github.io/getting-started).
### Testing a SNAPSHOT build
Building apps with official releases of **bitcoinj** is covered in the [tutorial](https://bitcoinj.github.io/getting-started).
If you want to develop or test your app with a [Jitpack](https://jitpack.io)-powered build of the latest `master` or `release-0.15` branch of **bitcoinj** follow the dynamically-generated instructions for that branch by following the correct link.
* [master](https://jitpack.io/#bitcoinj/bitcoinj/master-SNAPSHOT) branch
* [release-0.15](https://jitpack.io/#bitcoinj/bitcoinj/release-0.15-SNAPSHOT) branch----
| | Donation Address |
| --- | --- |
| ♥ __BTC__ | 1Lw2kh9WzCActXSGHxyypGLkqQZfxDpw8v |
| ♥ __ETH__ | 0xaBd66CF90898517573f19184b3297d651f7b90bf |