Skip to content

Commit 29dab47

Browse files
Merge pull request #36 from bitvavo/FAVO-8366_Update-SDK-release-procedure_Iain
feat: add the contributing guide to the repo.
2 parents 30b98ae + 72f050f commit 29dab47

File tree

2 files changed

+61
-14
lines changed

2 files changed

+61
-14
lines changed

CONTRIBUTING.md

Lines changed: 39 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,48 @@
11
Contributing
22
============
33

4+
The release process for Bitvavo SDK for Node.js is semi-automatic. You manually start the GitHub Action that creates
5+
the SDK package and uploads it to [npmjs](https://www.npmjs.com/package/bitvavo).
6+
47
## Prerequisites
5-
To release the SDK from your local development device you need:
6-
- Node installed on your development device
8+
9+
To release the SDK you need to:
10+
11+
- Complete the instructions in the [README Prerequisites](./README.md#prerequisites)
712
- Clone https://github.com/bitvavo/node-bitvavo-api to your development device
8-
- The [Bitvavo password for NPM] from the Exchange Backbone team vault in 1Password
913

10-
## Test and Publish the SDK
11-
After you have made your changes to the SDK, to publish Bitvavo SDK for Node.js:
12-
1. **Test the package**
14+
## Release a new version of the SDK
15+
16+
To update the SDK and publish your changes to the Bitvavo developer community:
17+
18+
1. **Make your updates to the SDK**
19+
20+
Create a branch and implement your changes to the SDK.
21+
22+
2. **Test the package**
1323
1. Run the smoke tests in `<repo-root>/example/testApi.js`
14-
2. **Release the SDK**
15-
1. Run the [Release workflow]. Use [Semver] to choose the version number.
16-
2. Fill out the notes in the [drafted release](https://github.com/bitvavo/node-bitvavo-api/releases).
17-
3. Publish the release.
24+
1. When your code passes the smoke tests, make a pull request
25+
to the `master` branch.
26+
27+
1. **Publish the SDK**
28+
29+
1. When your [pull request](https://github.com/bitvavo/node-bitvavo-api/pulls) is approved, merge your changes to
30+
the `master` branch.
31+
1. Note the release number of the
32+
[latest version of the SDK published to npmjs](https://www.npmjs.com/package/bitvavo?activeTab=versions)
33+
and using [semver](https://semver.org/) as your guide, decide on a version number for this release.
34+
1. In Actions, [run the release action](https://github.com/bitvavo/node-bitvavo-api/actions/workflows/release.yml)
35+
using your new release number.
36+
37+
1. Open the draft release created when you ran the release action.
38+
1. Add a brief description about the release.
39+
40+
This description is visible to the world in https://github.com/bitvavo/node-bitvavo-api/releases.
41+
1. Click **Publish**.
42+
43+
This starts the Publish action. You see the
44+
[new version available on npmjs](https://www.npmjs.com/package/bitvavo).
45+
46+
Now send the release message in Slack, yay.
1847

19-
The new version is published to https://www.npmjs.com/package/bitvavo.
2048

21-
[Bitvavo password for NPM]: https://start.1password.com/open/i?a=YUSMSDGGJBG5JDUAGUSBP4GYWM&v=asrum7nvbb2agfh3ob532ekbfy&i=f3i334rmzgxejycgufdwiiua3u&h=bitvavo.1password.com
22-
[Release workflow]: https://github.com/bitvavo/node-bitvavo-api/actions/workflows/release.yml
23-
[Semver]: https://semver.org/

README.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ You use Bitvavo SDK for Node.js to buy, sell, and store over 200 digital assets
55

66
To trade and execute your advanced trading strategies, Bitvavo SDK for Node.js is a wrapper that enables you to easily call every endpoint in [Bitvavo API](https://docs.bitvavo.com/). Every function available on the API can be called through a REST request or over WebSocket.
77

8+
* [Prerequisites](#prerequisites)
9+
* [Install](#installation)
810
* Getting started [REST](#getting-started) [WebSocket](#getting-started-1)
911
* General
1012
* Time [REST](#get-time) [WebSocket](#get-time-1)
@@ -42,7 +44,27 @@ To trade and execute your advanced trading strategies, Bitvavo SDK for Node.js i
4244
* [Book Subscription With Local Copy](#book-subscription-with-local-copy)
4345
* [Unsubscribe](#unsubscribe)
4446

47+
## Prerequisites
48+
49+
To start programming with Bitvavo SDK for Node.js you need:
50+
51+
- [Node.js](https://nodejs.org/en) installed on your development device
52+
- A Node app. Use your favorite IDE, or run from the command line
53+
- An [API key and secret](https://support.bitvavo.com/hc/en-us/articles/4405059841809) associated with your Bitvavo account
54+
55+
You control the actions your app can do using the rights you assign to the API key.
56+
Possible rights are:
57+
+ **View**: retrieve information about your balance, account, deposit and withdrawals
58+
+ **Trade**: place, update, view and cancel orders
59+
+ **Withdraw**: withdraw funds
60+
61+
Best practice is to not grant this privilege, withdrawals using the API do not require 2FA and e-mail confirmation.
62+
63+
4564
## Installation
65+
66+
To install Bitvavo SDK for Node.js, run the following command in your Node app:
67+
4668
```
4769
npm i bitvavo
4870
```

0 commit comments

Comments
 (0)