Skip to content

Development Guide

Saar Shen edited this page Mar 28, 2023 · 4 revisions

This page is intended to help you set up the development environment and reveal the processes for contribution.

Developing

Prerequisite

Fork this repository

Use the Fork button in the right upper corner to have your fork of this repository.

Note: pushing branches into this repository is not supported. Please PR from your fork.

Build

Firstly, please check your .NET SDK version by running:

dotnet --version

You will need 6.0.x or a higher version.

Tips: Use dotnet --info to list all .NET SDK installed on the machine.

Then, restore the NuGet packages when necessary, under the root folder:

dotnet restore

Build the product:

dotnet build

Test

We use xUnit and Moq for our unit tests. To run unit tests:

dotnet test tests\UnitTests\UnitTests.csproj

Code-Conventions

We use C# and please follow the coding conventions here: C# Coding Conventions. When there are special conventions, we will post them here.

Branches

  • The default branch is 'develop'. Please submit all pull requests for new features to this branch.

  • For new features, create a feature branch like feature/<feature-name>, for example:

feature/better-readme
  • For bug fixes, create a branch like bug/<issue-number>, for example, if the issue to track the bug is #100:
bug/100
  • Once the features are integrated and ready to release, they will be merged back into main. All releases will be shipped out of the main branch. The specific commit will be tagged for releases.

Continuous Integration

  • There's a simple GitHub action used as a pre-condition for finishing PR. Find out more details here.