Developing Locally

Prerequisites

For the development environment you need to install these tools:

Dependencies

To execute tests and run the project for debugging you also need instances of the following running and configured on the right ports:

We recommend you use our dockerized setup to bootstrap the development environment: The file BTCPayServer.Tests/docker-compose.yml can be used to spin everything up:

git clone git@github.com:btcpayserver/btcpayserver.git
cd btcpayserver/BTCPayServer.Tests
docker-compose up dev

To get started see the README of the test project.

Which IDE?

We recommend using Visual Studio Code (cross platform) or Visual Studio 2017 update 3 (Windows Only) or Rider (cross platform). You can of course use VIM if you are hardcore, .NET Core is command-line environment friendly.

Visual Studio Code, Visual Studio 2017 and Rider will run the debug profile Docker-Regtest. This will run a BTCPayServer instance connecting to the services in your Docker service, so you can easily debug and step through the code.

Videos

For more information check out these videos: